Over the last few months, I’ve written a number of posts about how to validate your Configuration Manager environment. In this post, I’ll demonstrate inventory cycle test procedures (even for the dreaded Software Inventory Cycle) which will prove that the client and site server are communicating.
It is important to test ConfigMgr’s inventory cycles, especially if you created the ConfigMgr environment. You need to demonstrate that everything is functioning properly. The first step is always to create a test plan. Obviously, two-way communication between the site server and clients is paramount. Seeing inventory returned to ConfigMgr is one way to prove that clients, MPs, in-boxes, and SQL Server are all working correctly.
Use the following steps to show that basic communication is working between the client and the site server.
Start by opening your Configuration Manager console and locating one of your test clients.
Record the date and time of the Policy Request.
Next, right-click on your test client and select Properties. On the Properties page, locate the Agent Name and Agent Time (UTC).
This might sound confusing, but expand the value column of Agent Name until you can see all values.
Then scroll to the right until you see Heartbeat Discovery (purple arrow in screenshot below). Notice its position within the list of discovery methods? In my case, it is the last item on the list, but this may be different in your case. Its position is random.
From the screenshot above we see that Agent Time (UTC) is two rows below Agent Name.
Agent Time (UTC) indicates the last time that the agent reported back to ConfigMgr. Based on this information we now know when the last time Heartbeat Discovery ran on this test client was.
Record this date and time, and then close the window by clicking on the OK button.
Next, right-click on your test client and start Resource Explorer.
Expand the Hardware node. Scroll to the bottom of the list and select the Workstation Status node. Record the Last Hardware Scan (Client Local Time) value (purple arrow).
Now expand the Software node. Scroll to the bottom of the list and select the Last Software Scan node. Record the Last Scan Date (Client Local Time) value (purple arrow).
Before going forward, ensure that you record the following four results:
Policy Request Date/Time
Heartbeat Discovery Date/Time
Hardware Scan Date/Time
Software Scan Date/Time
It is important to note this information because this will be your ONLY record.
On your test client, open the control panel and click on the System and Security link. Next, click on the Configuration Manager control panel applet link. Now let’s start the inventory cycle test procedures, select the Actions pane and then select the Discovery Data Collection Cycle item. On the lower right-hand side, click on the Run Now button and then click on the OK button in the pop-up window. Repeat this process for the Hardware Inventory Cycle, the Machine Policy Retrieval & Evaluation Cycle, and the Software Inventory Cycle.
Wait at least 5 minutes for all of the inventory cycles to complete. This process, however, depending on your environment, might take up to a few hours to complete. Please see my blog post, How Do You Determine the Length of a Software Inventory Scan Cycle? for more details.
Once all of the inventory cycle test procedures are complete, go back and confirm that all dates and times are updated by comparing this new information with what you recorded earlier.
Below are the results of my test client. You can see that each of the four inventory dates/times has been updated.
Performing these inventory cycle test procedures, with the results showing that all dates and times are updated, proves that all inventory tasks work correctly and it also proves that MPs are receiving inventory items from clients.
If you do run into issues, take a look at my blog post, Updated – Troubleshoot ConfigMgr Hardware Inventory Issues for additional help. Do you have questions about these inventory cycle test procedures? Feel free to contact me at @GarthMJ.