Introducing - the ConfigMgr Client Troubleshooter!
If you attended Angie Stahl's presentation at MMS, you caught a sneak peak of the ConfigMgr Client Troubleshooter. The troubleshooter is an html application, which makes it fairly portable, and all the code can be viewed using your favorite text editor. Use the troubleshooter to help you diagnose ConfigMgr client issues. This tool has become priceless at my company, where it is used by the Service Desk and OnSite teams (as well as my team on a daily basis). There are two modes currently avaible for the troubleshooter, Single System mode and Batch Mode.
Take a look at the following figure for single system mode:
When you launch the troubleshooter, the local computer name appears in the first textbox - to query a remote computer, simply enter the desired computer name, and then click Analyze. When you click Analyze, the troubleshooter will perform several remote WMI queries to the desired system (so if you're Analyzing a system over the WAN, please be patient). ** Keep in mind that this is running in your user context, so you will only be able to query the information that you have the proper rights to query. (for example, a "standard user" does not have the rights to see the value for "Last Scan Pkg Version (WSUS)".
The following table describes the colors used in the troubleshooter:
Not Checked - Verify information manually
Good - passed checks. No issue found.
Good, but non-standard. (e.g., Automatic updates set to "automatic" - everything will still work, but the setting is non standard.)
Bad - Check Failed - Something is wrong and needs to be addressed.
BEFORE YOU BEGIN: Be sure to customize the troubleshooter (info below), and install the latest SysInternals Tools to your %windir% directory (the troubleshooter requires psservice and pskill.) Make sure you run the tools manually one time - you need to review and accept the license agreements.
To Customize the troubleshooter, edit the .hta file with your favorite text editor, and locate and modify the following lines near the beginning of the file:
Const intMaxDays =60 'display 60 days of advert historyConst intMinDiskSpace = 2 '2 gb is used as the minimum disk space requirementConst strCCMSetupSource = "\\MYSCCMServer\sccmclient" 'path to ccmsetup.exe - ccmsetup.exe will be copied to the local system for install.Const strCCMSetupArgs = "SMSSLP=mySLP FSP=myFSP" 'add proper command-line argument info for client installationConst strClientVersion = "4.00.5931.0001" ' use your "corporate standard" version number hereConst strDefaultAdvertID = "LAB20083" ' this is just a default advertisement ID, used for re-running mandatory advertisements
Additional information for some of the buttons you see on troubleshooter:
The Fix button for each service listed in the troubleshooter will ensure that the service startup type is configured properly to run. It will also
Modifies WMI for the SMS Agent Host to autodiscover its assigned site, then restarts SMS Agent Host Service.
Force Site Assignment
Used to force a site assignment on a client.
Show Current Adverts
Shows advertisements currently assigned to the computer - You can see both mandatory installations, and Run Advertised Programs installations. You cannot see user-targeted advertisements.
Use this to re-run an existing mandatory advertisement on a client - you must specify the ADVERTISEMENTID.
Show Client Logs
Allows you to view client logs - **Note, this feature does not work properly when you' have launched the troubleshooter under alternate credentials, as this feature uses Windows Explorer.
Display Advert History
Displays advert history according to registry on target system.
Uses the command-lines and source you specified in the .hta file to install the SCCM client.
Displays applicable patches according to most recent sw update scan.
And now, we move on to my personal favorite, Batch Mode. When you launch the troubleshooter, you'll notice a scroll bar on the right-hand side of the window. Scroll down to view the following Batch Mode options:
You probably feel by now that you're being buttoned-to-death. :) I agree - and that's one of the features that will be improved in the next version. Fortunately, depending on your role in your company, you may find that you use a lot of these buttons on a regular basis. Batch Mode is simple - add computer names to the text box - one per line, and then click the action that you would like to perform on each of those systems.
**Remember, you're actively querying each system in your list, which may take some time, and also required additional administrative privileges.
The following table provides a brief description of most of the actions currently available in batch mode scan:
Batch Mode Scan
Performs a scan very similar to the single-mode scan, but for each system in the batch mode textbox.
Batch Policy Refresh
Performs a Machine Policy and Evaluation cycle on each system.
Batch Force DDR
Forces each system to initiate a discovery data record.
Batch Re-Discover Site
Forces the client to initiate a rediscover (requires psservice.exe, and pskill.exe).
Batch Query for Advert
Allows you to enter an AdvertisementID, then searches each system to see if that advert exists.
Rem Uninstasll Files
Deletes setup files in the %windir%\system32 directory that that's over 180 days old.
For most of the actions in Batch Mode, the information will be available to be copy/pasted into Excel. The file c:\temp\clip.txt will also be created (if c:\temp\ exists), containing the same information copied to the clipboard - this is very helpful when you're in a terminal services session (I frequently have issues with copy/paste in Terminal Services), or when the system you run the troubleshooter from does not have Excel installed.
Download 2003 Troubleshooter and the SCCM 2007 Troubleshooter now.
I hope to get a more permanent place for the .html application, so that you can help improve it!
I often use Batch Scan Mode and paste the info into Excel, and use Auto Filters to divide and conquer based on trends.
Notice that some of the SMS/SCCM properties are different for SCCM - For example, the last security patch scan date/time is a different WMI class than the one used for SMS 2003. So if you use the SMS troubleshooter on a client that has been upgraded from SMS to SCCM, you will see incorrect data for "Last Scan Package Version", as the SMS version of the tool queries a different space in WMI than the SCCM version.
Please submit bugs and feature requests to firstname.lastname@example.org.