FIM 2010 R2 Troubleshooting: How to Enable ETW Tracing for Connectors
If you need to troubleshoot a connector issue, tracing enables you gather more details about the root cause of it.
The objective of this article is to provide you with the information you need to configure tracing for the FIM connectors you can download from the Microsoft download center.
Configuring Tracing
To configure how your connector handles tracing, you need to modify your miiserver.exe.config file that is located at:
%programfiles%\Microsoft Forefront Identity Manager\2010\Synchronization Service\Bin
In this file, you need to update the system.diagnostics > sources section:
To configure tracing for a connector, the connector must have a source section.
In this section, your connector is identified by a specific value for the name attribute.
The following section shows an example for the SharePoint connector:
Note
The source name attribute is defined in the connector’s source code and cannot be changed.
As a next step, you need to define the types of tracing you want to enable.
The configured tracing types are defined by <add> elements in the listeners section.
The following screenshot shows the generic XML structure you need to configure for a connector to enable tracing:
Logging Options
You can configure more than one logging option for a management agent.
For each option, you need to add an add element under the listeners element.
Each add element must provide values for the following attributes:
- name
- type
- initializeData
There is no specific value you need to configure for the add name attribute.
You can pick any value that is intuitive to you for this attribute.
The values for the other attributes are depending on the type of logging.
This article covers three different tracing options:
- Logging into the Eventlog
- Logging into the ETW tracing subsystem
- Logging into a trace file
Logging into the Eventlog
When you configure logging into the event log, the related entries are stored under
Application and Services > Forefront Identity Manager Connectors
In your listener, you need to set the initializeData attribute.
The attribute value is predefined and represents that value that is used as Source attribute in the Event Viewer:
The value of the type attribute must be:
System.Diagnostics.EventLogTraceListener
For logging into the eventlog, the add element contains a filter element.
By default, you can leave the type attribute of this element empty:
<filter type="" />
Logging to the ETW tracing subsystem
To log into the ETW tracing subsystem, the value of the type attribute must be:
“System.Diagnostics.Eventing.EventProviderTraceListener, System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089”
To collect ETW traces for Sharepoint Connector, run the following commands in the specified order from an elevated command prompt:
logman start myConnectorSession -p {AF22576D-1724-4C52-8DF8-F756CB51456D} -o SharepointConnectorTrace.etl –f bincirc –max 2000 –ets
You can open saved traces with the Event Viewer.
Logging into a trace file
To create a trace file, the value of the type attribute is:
"System.Diagnostics.TextWriterTraceListener"
The value of initializeData is the path to your log file.
Configuration Samples
This section provides configuration examples for connectors.
Connector for SharePoint Services
Logging into the ETW tracing subsystem
<``source
name``=``"SharepointConnector.ETW"
switchValue``=``"Verbose"
switchType``=``"System.Diagnostics.SourceSwitch"``>
<listeners>
<add name="SharepointConnectorETWListener" type="System.Diagnostics.Eventing.EventProviderTraceListener, System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" initializeData="{AF22576D-1724-4C52-8DF8-F756CB51456D}" />
</listeners>
</source>
Logging into the event log
<source name="SharepointConnector.ETW" switchValue="Verbose" switchType="System.Diagnostics.SourceSwitch">
<listeners>
<add initializeData="SharepointConnector" type="System.Diagnostics.EventLogTraceListener" name="SharepointConnectorEventLogListener" traceOutputOptions="LogicalOperationStack, DateTime, Timestamp, Callstack">
<filter type="" />
</add>
</listeners>
</source>
ETW GUIDs for different Connectors
This section provides provides GUIDs for connectors.
Connector | Source Name | ETW GUID |
---|---|---|
Generic LDAP | ConnectorsLog | {76279237-7F67-40F3-A0A9-DAB98CFBA2B9} |
Generic SQL | ConnectorsLog | {12E3A41B-5B3C-4DDF-A120-40E04A92352F} |
Lotus | ConnectorsLog | {05044017-EE46-4364-AB96-CC4FCDB6F110} |
PowerShell | ConnectorsLog | {2ECA41C5-2D1D-4B13-8FA4-C9DFFAB178B3} |
Web Service | ConnectorsLog | {FA07AFF9-045B-4EDD-9FF0-B51F157CEBD7} |
Web Service Configuration Tool | ConnectorsLog | {667A3B5A-18DF-4C70-95FA-299A36B182EA} |
Windows Azure Active Directory Connector | WindowsAzureActiveDirectoryConnectorTraceSource | N/A |
SharePoint Connector | SharepointConnector.ETW | {AF22576D-1724-4C52-8DF8-F756CB51456D} |
See Also