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.