USD – Log Files

Unified Service Desk (USD) for Microsoft Dynamics CRM 2016 creates log files that may be very useful when trying to debug issues. In this post I will describe where to find these files and how to control the level of debugging information.

In %appdata%, Roaming, Microsoft, Microsoft Dynamics CRM Unified Service Desk … you will find a directory for each version of USD you’ve had installed. In the directory of your current version you will find a log file relating to each day USD was loaded.

You can open these files with notepad to review any errors that might have been logged. The entries in these files are in date / time order, so typically you’ll jump straight to the end of the file and review what has been happening recently.

By default, just errors will be included in these files. Commonly, if you are debugging you’ll want to gain more information. To achieve this, we edit the “UnifiedServiceDesk.exe.config” file. Which can be found in your program files directory.

Opening the file in NotePad (or any editor) will allow you to make the required changes. First search for the “<switches>” Section of the document. Yours will initially look something like the one shown below.

Tip:
You will need admin rights to edit this file. I copied to my desktop, changed and then copied back. (Keeping a copy of my original just in case!)

<switches>

<!--

Possible values for switch - "Microsoft.Uii.Common.Logging" : Off, Error, Warning, Info, Verbose

Possible values for other switches : Off, Error, Warning, Information, Verbose

Verbose: includes Error, Warning, Info, Trace levels

Information: includes Error, Warning, Info levels

Warning: includes Error, Warning levels

Error: includes Error level

-->

<add name="EventTopicSwitch" value="Error"/>

<add name="Microsoft.Uii.Common.Logging" value="Error"/>

<add name="Microsoft.Xrm.Tooling.CrmConnectControl" value="Error"/>

<add name="Microsoft.Xrm.Tooling.Connector.CrmServiceClient" value="Error"/>

<add name="Microsoft.Xrm.Tooling.WebResourceUtility" value="Error"/>

<add name="Microsoft.Crm.UnifiedServiceDesk" value="Error"/>

<add name="Microsoft.Crm.UnifiedServiceDesk.Dynamics" value="Warning"/>

<add name="Microsoft.Crm.UnifiedServiceDesk.CommonUtility.UserProfileManager" value="Error"/>

<add name="UnifiedServiceDesk.KPIControl" value="Error"/>

<add name="Microsoft.Crm.UnifiedServiceDesk.Performance" value="Off"/>

<add name="Microsoft.Uii.Common.Performance" value="Off"/>

<add name="Microsoft.Crm.UnifiedServiceDesk.CommonUtility" value="Error"/>

<add name="Microsoft.IdentityModel.Clients.ActiveDirectory" value="Error" />

</switches>

Using NotePad alter the lines that say value="Error" to be value="Verbose". You can also change the lines that are value="Warning" or value="Off" if you wish. After you've made the changes it will resemble something like the details shown below.

<switches>

<!--

Possible values for switch – “Microsoft.Uii.Common.Logging” : Off, Error, Warning, Info, Verbose

Possible values for other switches : Off, Error, Warning, Information, Verbose

Verbose: includes Error, Warning, Info, Trace levels

Information: includes Error, Warning, Info levels

Warning: includes Error, Warning levels

Error: includes Error level

-->

<add name="EventTopicSwitch" value="Verbose"/>

<add name="Microsoft.Uii.Common.Logging" value="Verbose"/>

<add name="Microsoft.Xrm.Tooling.CrmConnectControl" value="Verbose"/>

<add name="Microsoft.Xrm.Tooling.Connector.CrmServiceClient" value="Verbose"/>

<add name="Microsoft.Xrm.Tooling.WebResourceUtility" value="Verbose"/>

<add name="Microsoft.Crm.UnifiedServiceDesk" value="Verbose"/>

<add name="Microsoft.Crm.UnifiedServiceDesk.Dynamics" value="Verbose"/>

<add name="Microsoft.Crm.UnifiedServiceDesk.CommonUtility.UserProfileManager" value="Verbose"/>

<add name="UnifiedServiceDesk.KPIControl" value="Verbose"/>

<add name="Microsoft.Crm.UnifiedServiceDesk.Performance" value="Off"/>

<add name="Microsoft.Uii.Common.Performance" value="Off"/>

<add name="Microsoft.Crm.UnifiedServiceDesk.CommonUtility" value="Verbose"/>

<add name="Microsoft.IdentityModel.Clients.ActiveDirectory" value="Verbose" />

</switches>

Next close USD and reload. You will now find much more detailed information is recorded in the log files. Depending on your disk capacity you might want to swap these back to “Error” once you’ve finished debugging.

Hopefully this will information help anyone trying to debug issues in USD. J

2 thoughts on “USD – Log Files

  1. Another great blog, thanks Neil! I like to write to these logs in custom code by instantiating a DynamicsFileLogTraceListener (Namespace Microsoft.Xrm.Tooling.Connector), then calling the WriteLine and Flush methods. I also like to assume Error level when doing this, unless a custom USD User Setting has provided an elevated level like Verbose. This enables CRM-side control of the trace level for custom code per user, without having to edit the user’s local config file.

    Like

  2. Pingback: USD – The Book | Microsoft Dynamics CRM and Unified Service Desk

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s