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

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=»″ CCMHTTPPORT=»80″ CCMHTTPSPORT=»443″ CCMHTTPSSTATE=»224″ CCMFIRSTCERT=»1″    ccmsetup    21.02.2012 11:46:37    1896 (0x0768)

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

C:\Windows\ccmsetup\ 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    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 )


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


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.

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

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

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

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

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

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

Records client service restart activity.

Records activities for the client SDK interfaces.

Maintains certificates for Active Directory Domain Services and management points.

Records details about configuration item definition downloads.

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

Records the signing and authentication activity for the client.

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

Records tasks that are related to client site assignment.

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.

Records information for the remote control service.

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

Records all BITS communication for policy or package access.

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

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

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

Records all SMB package access tasks.

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

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

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

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

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

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

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

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

Monitors all software metering processes.

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

Records policy changes.

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

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

Records activities for policy system SDK interfaces.

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.

Records the activities of remote control.

Records the activity in Software Center for the specified user on the client computer.

Records the historical activity in Software Center for the specified user on the client computer.

Records activities of scheduled tasks for all client operations.

Records the activity for notifying users about software for the specified user.

Records the historical information for notifying users about software for the specified user.

Records configuration and inventory policy creation in WMI.

Records usage of the Configuration Manager client in Control Panel.

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

Records status messages that are created by the client components.

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

Records details about user device affinity.

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.

#098, #152, #194, #213, #239, #519, #559, #813, #866, #configmgr2012-client, #sccm-2012-client-install