ConfigMgr 2012: Tracking Application Model installations on clients

I frequently get customers asking me how to track and troubleshoot Application model based installs on clients within Configuration Manager 2012. This blog post is intended as a quick reference to the log file interaction when an application is being installed. Legacy package and programs are still logged to execmgr.log as with previous versions of the product.

App log file flow (excluding content download):

AppDiscovery.log > AppIntentEval.log > AppDiscovery.log > CAS.Log* > AppEnfroce.log > AppIntentEval.log

* and other content transfer logs which I am not covering in this post

Tracing the log files:

To easily track the application installation it’s easier to use the CI ID for both the application and its deployment type. The application CI Unique ID can be obtained by adding the CI Unique ID column to the console view.

 

However, each deployment type within an Application also has a unique CI ID, and if you have applications with multiple deployment types it will be handy to grab the unique CI ID for that deployment type. There are a couple of ways to grab this, but to get this quickly I like to put the console in debug mode by editing the shortcut, in my case;

"C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole\bin\Microsoft.ConfigurationManagement.exe" sms:debugview

When you open the Console you’ll see a new Tools node;

 

When you right click objects in the console you’ll also get a new context menu option appear;

 

This will give you useful namespace properties about the objects. In the case of tracing the below log files we’re interested in the CI_UniqueID;

 

(NOTE: You’ll notice I also added the content ID column for the deployment type view to help me track content downloads)

At this stage I’m assuming you know how to deploy applications with ConfigMgr 2012 so I’m going to move straight onto the log files, and pick up as if the client has just detected the new policy and is beginning to install the application, starting at this point;

Log file walk through:

All Configuration Manager Client log files are located in %windir%\ccm\logs by default (unless you’ve changed the location, of course J)

Highlighting key:

Green – Application deployment type CI Unique ID
Yellow – Interesting information (well, at least for us ConfigMgr geeks :))
Blue – Content information

AppDiscovery.log

 Records information about the discovery and detection of applications targeted a client. If you screwed up your detection rules you'd see it here :) When you target an application at a new device, it will be picked up by AppDiscovery;

Entering ExecQueryAsync for query "select * from CCM_AppDeliveryType where (AppDeliveryTypeId = "ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2" AND Revision = 1)" 01/10/2013 10:26:40 1196 (0x04AC)

    Performing detection of app deployment type Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file)(ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2, revision 1) for system. 01/10/2013 10:26:40 1196 (0x04AC)

+++ MSI application not discovered [MSI Product Code: {11C429DC-C183-46EC-9BD0-D0CF2C6279B6}, MSI Product version: ] 01/10/2013 10:26:40 1196 (0x04AC)

+++ Did not detect app deployment type Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file)(ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2, revision 1) for system. 01/10/2013 10:26:40 1196 (0x04AC)

AppIntentEval.log

Records status of all applications and associated dependencies on device. 

No dependencies for DeploymentType ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2/1. 01/10/2013 10:26:40 3876 (0x0F24)

Evaluating Application policies for Machine 01/10/2013 10:26:40 3876 (0x0F24)

ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2/1 :- Current State = NotInstalled, Applicability = Applicable, ResolvedState = Installed, ConfigureState = NotNeeded, Title = Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file) 01/10/2013 10:26:40 3876 (0x0F24)

AppDiscovery.log

Back to AppDiscovery.log to verify that the installation will continue…

   ActionType - Install will use Content Id: Content_8bb9caf6-8c05-4289-a849-c3aa21390a64 + Content Version: 1 for AppDT "Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file)" [ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2], Revision - 1 01/10/2013 10:26:41 1196 (0x04AC)

You’ll note that this is where the content request is also made and passed over to the Content Access Service.

CAS.log

There is more to the content download tracing then just the content access service log, however for the purpose of this walkthrough I will not take content tracing further than here. If you want to take it further, note the CTM / download job IDs from the below snippet;

Requesting content Content_8bb9caf6-8c05-4289-a849-c3aa21390a64.1, size(KB) 4257, under context System with priority Medium 01/10/2013 10:26:41 1364 (0x0554)

Submitted CTM job {B783F9B1-C3F8-456D-81B9-21BBC61CDC1C} to download Content Content_8bb9caf6-8c05-4289-a849-c3aa21390a64.1 under context System 01/10/2013 10:26:41 1364 (0x0554)

Successfully created download request {CB4C0F3D-C8B5-497F-BC9E-E7A3DB9798E9} for content Content_8bb9caf6-8c05-4289-a849-c3aa21390a64.1 01/10/2013 10:26:41 1364 (0x0554)

Location update from CTM for content Content_8bb9caf6-8c05-4289-a849-c3aa21390a64.1 and request {CB4C0F3D-C8B5-497F-BC9E-E7A3DB9798E9} 01/10/2013 10:26:41 3524 (0x0DC4)

Download location found 0 - https://SP1RTM.PAZ.CORP/SMS\_DP\_SMSPKG$/Content\_8bb9caf6-8c05-4289-a849-c3aa21390a64.1 01/10/2013 10:26:41 3524 (0x0DC4)

Download request only, ignoring location update 01/10/2013 10:26:41 3524 (0x0DC4)

Download started for content Content_8bb9caf6-8c05-4289-a849-c3aa21390a64.1 01/10/2013 10:26:41 2848 (0x0B20)

Download completed for content Content_8bb9caf6-8c05-4289-a849-c3aa21390a64.1 under context System 01/10/2013 10:26:56 1364 (0x0554)

Computed hash: DCA285AF5F69A8C5CE70E1C7BC3176CD971A0AAE896E860709332B756FDC9D29 01/10/2013 10:26:56 1364 (0x0554)

Hash verification succeeded for content Content_8bb9caf6-8c05-4289-a849-c3aa21390a64.1 downloaded under context System 01/10/2013 10:26:56 1364 (0x0554)

Download succeeded for download request {CB4C0F3D-C8B5-497F-BC9E-E7A3DB9798E9} 01/10/2013 10:26:56 1364 (0x0554)

Saved Content ID Mapping Content_8bb9caf6-8c05-4289-a849-c3aa21390a64.1, C:\WINDOWS\ccmcache\f 01/10/2013 10:26:56 1364 (0x0554)

AppEnforce.log

Records installation information for an applications. Success/Errors during an installation would be captured here.

+++ Starting Install enforcement for App DT "Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file)" ApplicationDeliveryType - ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2, Revision - 1, ContentPath - C:\WINDOWS\ccmcache\f, Execution Context - System 01/10/2013 10:26:57 1196 (0x04AC)

    A user is logged on to the system. 01/10/2013 10:26:57 1196 (0x04AC)

    Performing detection of app deployment type Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file)(ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2, revision 1) for system. 01/10/2013 10:26:57 1196 (0x04AC)

+++ MSI application not discovered [MSI Product Code: {11C429DC-C183-46EC-9BD0-D0CF2C6279B6}, MSI Product version: ] 01/10/2013 10:26:57 1196 (0x04AC)

    App enforcement environment:

       Context: Machine

       Command line: msiexec /i "ConfigMgrTools.msi" /q

       Allow user interaction: No

       UI mode: 0

       User token: null

       Session Id: 4294967295

       Content path: C:\WINDOWS\ccmcache\f

       Working directory: 01/10/2013 10:26:57 1196 (0x04AC)

    Prepared working directory: C:\WINDOWS\ccmcache\f 01/10/2013 10:26:57 1196 (0x04AC)

Found executable file msiexec with complete path C:\WINDOWS\system32\msiexec.exe 01/10/2013 10:26:57 1196 (0x04AC)

    Prepared command line: "C:\WINDOWS\system32\msiexec.exe" /i "ConfigMgrTools.msi" /q /qn 01/10/2013 10:26:57 1196 (0x04AC)

Valid MSI Package path = C:\WINDOWS\ccmcache\f\ConfigMgrTools.msi 01/10/2013 10:26:57 1196 (0x04AC)

    Advertising MSI package [C:\WINDOWS\ccmcache\f\ConfigMgrTools.msi] to the system. 01/10/2013 10:26:57 1196 (0x04AC)

    Executing Command line: "C:\WINDOWS\system32\msiexec.exe" /i "ConfigMgrTools.msi" /q /qn with system context 01/10/2013 10:26:57 1196 (0x04AC)

    Working directory C:\WINDOWS\ccmcache\f 01/10/2013 10:26:57 1196 (0x04AC)

    Post install behavior is BasedOnExitCode 01/10/2013 10:26:57 1196 (0x04AC)

    Waiting for process 3600 to finish. Timeout = 120 minutes. 01/10/2013 10:26:57 1196 (0x04AC)

    Process 3600 terminated with exitcode: 0 01/10/2013 10:26:58 1196 (0x04AC)

    Looking for exit code 0 in exit codes table... 01/10/2013 10:26:58 1196 (0x04AC)

    Matched exit code 0 to a Success entry in exit codes table. 01/10/2013 10:26:58 1196 (0x04AC)

    Performing detection of app deployment type Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file)(ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2, revision 1) for system. 01/10/2013 10:26:58 1196 (0x04AC)

+++ Discovered MSI application [AppDT Id: ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2, Revision: 1, MSI Product code: {11C429DC-C183-46EC-9BD0-D0CF2C6279B6}, MSI Product version: ] 01/10/2013 10:26:58 1196 (0x04AC)

++++++ App enforcement completed (1 seconds) for App DT "Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file)" [ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2], Revision: 1, User SID: ] ++++++ 01/10/2013 10:26:58 1196 (0x04AC)

AppIntentEval.log 

 After installation AppIntentEval.log will again check to see if the application has installed successfully. Notice how this differs from AppIntentEval exert above before the application was installed. Every time app deployment re-evaluation runs you will also see this log file updated;

No dependencies for DeploymentType ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2/1. 01/10/2013 10:26:59 1364 (0x0554)

Evaluating Application policies for Machine 01/10/2013 10:26:59 1364 (0x0554)

ScopeId_092F8226-C53D-442B-BA21-C4E670C66ECF/DeploymentType_d160e6e0-7ac2-41b4-9f12-525a2ce274d2/1 :- Current State = Installed, Applicability = Applicable, ResolvedState = Installed, ConfigureState = NotNeeded, Title = Configmgr 2012 Toolkit SP1 - Windows Installer (*.msi file) 01/10/2013 10:26:59 1364 (0x0554)

 

So hopefully this makes your app tracking a little easier. Any questions feel free to comment below.

Comments

  • Anonymous
    January 01, 2003
    Hello,

    Thank you for the information.
    I have recently ran into an issue, where i tried to install an application and uninstalled the same using the SCCM 2012 Config Mgr. I tried re-installing the application, however it fails to install since my AppDiscovery.log files says application is discovered and deployment type is detected. I have used windows installer as my detection method. as a try i have cleared all the registry value related to my MSI but no luck :-(.
  • Anonymous
    December 04, 2014
    Thanks for this. Interesting stuff.
  • Anonymous
    January 02, 2015
    I have installed a msi and uninstalled the same using SCCM 2012 Config Mgr. When i tried to re-install the application, however my AppDiscovery.log file says application is discovered and is not getting installed. I have used windows installer detection mention.

    Any help will be greatly appreciated
  • Anonymous
    May 12, 2015
    Great article.....
  • Anonymous
    May 26, 2015
    good sharing!!
  • Anonymous
    November 12, 2015
    Very helpful, thank you
  • Anonymous
    June 27, 2016
    The comment has been removed
  • Anonymous
    August 22, 2016
    Good article to know more application troubleshooting... Thanks!!!
  • Anonymous
    September 28, 2016
    This is one of the best explanations...It helped a lot.. Thank you .. Keep posting ..
  • Anonymous
    October 06, 2016
    Great share and straightforward. I learned a lot about application enforcement tracking from this when I read it originally last year. What's missing for me, though, is tracking an app from the Application Catalog. We have assign an application to a user and it shows up in their Application Catalog. They're the primary user on their machine (and/or the application doesn't have a requirement that they be), but when they try to install they get the "Application Installation Not Started" followed by an explanation that the computer does not meet the requirements for installing and listing some generic reasons why this might be so. Where can we see WHICH requirements it is that aren't being met? AppIntentEval.log simply says: Current State = NonCompliant, Applicability = NotApplicable, ResolvedState = None, ConfigureState = NotNeeded, Title = ApplicationIntentPolicy
  • Anonymous
    February 23, 2018
    Thank you very much. I was pushing out Kaspersky Uninstallation to 9000 clients and about 600 clients were stuck in In Progress status. It turned out that the content distribution was stuck in one of distribution servers, some clients were not able to download it. Most of clients found contents from nearby site servers, some don't.I traced Content ID as I learned from this article and CAS.log was shown to be continuously trying to download application content. Once I redistributed content to the troubled distribution server, then I re-initiated machine policy push to those clients, the stubborn clients start decreasing in In-Progress to Success!