SCCM Client

Many times you might get some error with your ConfigMgr agents, and they are always to easy to fix.
So I’m going to walkthrough how ConfigMgr installs the agent (and where) And how you can debug your agent.
Before we continue, it is very useful that you have CMtrace installed (Which is a tool used for view log files) It is very useful to viewing the numerous log files that the ConfigMgr agent has.
CMtrace is located on the ConfigMgr media under SMSSETUP\Tools\

Now when you install the client (If you haven’t changed the installation directory)  It will be installed under C:\windows\ccm
And you might also see 2 other folders there as well.
1: ccmcache (Which is a cache folder for software distribution )
2: ccmsetup ( Which is the folder that gets created when you install the agent on the computer )

A Couple of notes of each folder.
The ccmcache is by default set to use 250 MB of space, if you have a software distribution that uses more space then that, you will get an error message in the software portal. Note you can change the size the agent can use in cache by using the SMSCACHESIZE parameter during the install, now a days you can set that to a higher limit since 250 MB is nothing today, when storage is so cheap.

The ccmsetup. When you install the agent on a computer from a console, it will try to authenticate first will the run as account configured in the console (And that user has to be set as administrator on the computer) If that fails it tries with the computer account. And it will try to connect using WMI, and copy the agent setup from the MP (Management Point)
You can also install the sccm agent manually by copying the agent folder from the installation media, under SMSSETUP\CLIENT and run ccmsetup with the needed parameters that you can find here http://technet.microsoft.com/en-us/library/cc181242.aspx

When you install you have to logs you can watch, first is the ccmsetup.log file under the ccmsetup folder and the client.msi.log
If you open the ccmsetup.log file you can see that the setup fetches the fils from the Management Point and uses the parameters that are set in the SCCM console.

MSI properties:    INSTALL=»ALL» SMSSITECODE=»TST» SMSSLP=»192.168.0.1″ CCMHTTPPORT=»80″ CCMHTTPSPORT=»443″ CCMHTTPSSTATE=»224″ CCMFIRSTCERT=»1″    ccmsetup    21.02.2012 11:46:37    1896 (0x0768)

GET ‘HTTP://CONFIGMGR/CCM_Client/ccmsetup.cab’    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)

C:\Windows\ccmsetup\ccmsetup.cab is Microsoft trusted.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Successfully extracted manifest file C:\Windows\ccmsetup\ccmsetup.xml from file C:\Windows\ccmsetup\ccmsetup.cab.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Loading manifest file: C:\Windows\ccmsetup\ccmsetup.xml    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Successfully loaded ccmsetup manifest file.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘i386/vcredist_x86.exe’ is applicable. Add to the list.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘x64/vcredist_x64.exe’ is applicable. Add to the list.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘i386/vc50727_x86.exe’ is not applicable.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘x64/vc50727_x64.exe’ is applicable. Add to the list.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘i386/WindowsUpdateAgent30-x86.exe’ is not applicable.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘x64/WindowsUpdateAgent30-x64.exe’ is applicable. Add to the list.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘i386/msxml6.msi’ is not applicable.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘x64/msxml6_x64.msi’ is applicable. Add to the list.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘i386/msrdcoob_x86.exe’ is not applicable.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘x64/msrdcoob_amd64.exe’ is not applicable.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)
Item ‘pkgmgr.exe’ is not applicable.    ccmsetup    21.02.2012 11:46:38    2172 (0x087C)

After its done copying over the setup file and installed the prerequisites, it launces the msiexec with the parameters and you can head over the other log file client.msi  (This is a huge log, and not always very informative ) Most likely if the setup fails you can see this in the ccmsetup.log 
When the setup is finished you can see an entry in the ccmsetup.log

File C:\Windows\ccmsetup\{0BC18F8E-DB68-4B11-A37D-2B7C250461AB}\client.msi installation succeeded.    ccmsetup    24.02.2012 07:40:13    2668 (0x0A6C)

And in the event log under the application log.

Windows Installer installed the product. Product Name: Configuration Manager Client. Product Version: 5.00.7678.0000. Product Language: 1033. Manufacturer: Microsoft Corporation. Installation success or error status: 0.

Note the agent does not need a restart (Unless you have installed System Center Endpoint Protection as well)

And you can see under the start menu you will now have a new listing called Microsoft System Center 2012 and under there you can see the Software Center. Now if you open this, you can see all the applications that are available for the computer you are sitting on ( If you have deployed any software )

image

You will also get a Control Panel applet,  which shows what Site and what MP your computer is connected to.

image

If you don’t get any errors in any of these, check these points

There are a couple of things that might stop the client to get assigned to the site.
1: SCCM Information is not available in AD (If you haven’t done this you need to add the additional parameters in the setup)
    —- IF you haven’t expanded AD you would need to either, add the SRV record for MP or manually add the MP using the setup parameter
2: The Parameters that are set are not set correctly
3: You have not setup the boundaries correctly
4: Firewall blocking access.
     —- Port 445 SMB
     —- Port 135 RPC
     —- Port 80 / 443 HTTP/S
5: Computer not approved in the SCCM Console ( You need to go into the console and approve it to communicate with the site )
6: PKI Setup wrong

These are the most likely errors that you might bump into, in case you still get an error message from the agent after you double-checked these points.
Open the folder C:\windows\ccm\logs.

Here you will find a whole bunch of logs, which all of them are connected to a specific component in the agent.

CAS.log
Content Access service. Maintains the local package cache on the client.

Ccm32BitLauncher.log
Records actions for starting applications on the client marked as «run as 32bit».

CcmEval.log
Records Configuration Manager client status evaluation activities and details for components that are required by the Configuration Manager client.

CcmEvalTask.log
Records the Configuration Manager client status evaluation activities that are initiated by the evaluation scheduled task.

CcmExec.log
Records activities of the client and the SMS Agent Host service.

Ccmperf.log
Records activities related to the maintenance and capture of data related to client performance counters.

CcmRestart.log
Records client service restart activity.

CCMSDKProvider.log
Records activities for the client SDK interfaces.

CertificateMaintenance.log
Maintains certificates for Active Directory Domain Services and management points.

CIDownloader.log
Records details about configuration item definition downloads.

CITaskMgr.log
Records tasks that are initiated for each application and deployment type, such as content download or install or uninstall actions.

ClientAuth.log
Records the signing and authentication activity for the client.

ClientIDManagerStartup.log
Creates and maintains the client GUID and identifies tasks performed during client registration and assignment.

ClientLocation.log
Records tasks that are related to client site assignment.

CMHttpsReadiness.log
Records the results of running the Configuration Manager HTTPS Readiness Assessment Tool. This tool checks whether computers have a PKI client authentication certificate that can be used for Configuration Manager.

CmRcService.log
Records information for the remote control service.

ContentTransferManager.log
Schedules the Background Intelligent Transfer Service (BITS) or the Server Message Block (SMB) to download or to access packages.

DataTransferService.log
Records all BITS communication for policy or package access.

EndpointProtectionAgent
Records information about the installation of the Endpoint Protection client and the application of antimalware policy to that client.

execmgr.log
Records details about packages and task sequences that run on the client.

ExpressionSolver.log
Records details about enhanced detection methods that are used when verbose or debug logging is enabled.

FileBITS.log
Records all SMB package access tasks.

FileSystemFile.log
Records the activity of the Windows Management Instrumentation (WMI) provider for software inventory and file collection.

FSPStateMessage.log
Records the activity for state messages that are sent to the fallback status point by the client.

InternetProxy.log
Records the network proxy configuration and usage activity for the client.

InventoryAgent.log
Records activities of hardware inventory, software inventory, and heartbeat discovery actions on the client.

LocationCache.log
Records the activity for location cache usage and maintenance for the client.

LocationServices.log
Records the client activity for locating management points, software update points, and distribution points.

MaintenanceCoordinator.log
Records the activity for general maintenance task activity for the client.

Mifprovider.log
Records the activity of the WMI provider for .MIF files.

mtrmgr.log
Monitors all software metering processes.

PolicyAgent.log
Records requests for policies made by using the Data Transfer service.

PolicyAgentProvider.log
Records policy changes.

PolicyEvaluator.log
Records details about the evaluation of policies on client computers, including policies from software updates.

PolicyPlatformClient.log
Records the process of remediation and compliance for all providers located in %Program Files%\Microsoft Policy Platform, except the file provider.

PolicySdk.log
Records activities for policy system SDK interfaces.

PwrProvider.log
Records the activities of the power management provider (PWRInvProvider) hosted in the Windows Management Instrumentation (WMI) service. On all supported versions of Windows, the provider enumerates the current settings on computers during hardware inventory and applies power plan settings.

RemoteControl.log
Records the activities of remote control.

SCClient_<domain>@<username>_1.log
Records the activity in Software Center for the specified user on the client computer.

SCClient_<domain>@<username>_2.log
Records the historical activity in Software Center for the specified user on the client computer.

Scheduler.log
Records activities of scheduled tasks for all client operations.

SCNotify_<domain>@<username>_1.log
Records the activity for notifying users about software for the specified user.

SCNotify_<domain>@<username>_1-<date_time>.log
Records the historical information for notifying users about software for the specified user.

setuppolicyevaluator.log
Records configuration and inventory policy creation in WMI.

smscliui.log
Records usage of the Configuration Manager client in Control Panel.

SrcUpdateMgr.log
Records activity for installed Windows Installer applications that are updated with current distribution point source locations.

StatusAgent.log
Records status messages that are created by the client components.

SWMTRReportGen.log
Generates a usage data report that is collected by the metering agent. This data is logged in Mtrmgr.log.

UserAffinity.log
Records details about user device affinity.

VirtualApp.log
Records information specific to the evaluation of App-V deployment types.

Incase you need more verbose logging we can enable this via regedit (on the client)

  1. Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CCM\Logging\@GLOBAL and modify the following as desired:
    1. LogLevel = 1 (default) – Set this value to 0 (zero) to enable Debug Logging
    2. LogMaxHistory = 1 (default) – This is the maximum number of rollover log files to keep. Increase this number to keep additional rollover logs.
    3. LogMaxSize = 250000 (decimal, which is 245 kb) – increase this number to increase the max log size for each log.
  2. Navigate to [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CCM\Logging], and Create a new KEY of the name “DebugLogging”
  3. Restart the SMS Agent Host service (ccmexec.)

If you have any spesific errors you need help with, I suggest heading over to either one these forums.

http://www.windows-noob.com/forums/index.php?/forum/92-configuration-manager-2012/ 
http://social.technet.microsoft.com/Forums/en-US/category/systemcenter2012configurationmanager

#configmgr2012-client, #sccm-2012-client-install