OVERVIEW

This document will provide the steps necessary to enable verbose tracing for the FIM Portal. 
FIM Portal Tracing is enabled/disabled via the Windows SharePoint Services 3.0 Web.Config file. ( C:\Inetpub\wwwroot\wss\VirtualDirectories\80\web.config )

STEPS TO ENABLE FIM SERVICE TRACING

  1. Prior to making any changes to this file, it is very important to make a backup copy of this file. You can do this by very simply copying, and pasting the file in the same directory, or placed into a backup directory.
  2. Once you have made the backup copy of the web.config file, then let's edit the web.config file
    1. *NOTE* You can use editors such as Notepad, Visual Studio, or any text file editor.
  3. Set the log file location
    1. In this wiki, we will be using "C:\Logs" as the place to put our log files. By default, "C:\Logs does not exist. If you do not have a "C:\Logs" folder, then please create one at this time.
      1. Make sure the Identity account for the SharePoint Application Pool has permissions to the folder where the logs are being creeated.  In this case, C:\Logs.
  4. In the web.config file, search for </configsections>.  (In a default web.config, you should see the <sharePoint> tag
  5. In between the </configsections> tag and the <sharePoint> tag insert the below text
  6.   <system.diagnostics>
        <sources>
          <source name="System.ServiceModel.MessageLogging" switchValue="Verbose,ActivityTracing">
            <listeners>
              <add type="System.Diagnostics.DefaultTraceListener" name="Default">
                <filter type="" />
              </add>
              <add name="ServiceModelMessageLoggingListener">
                <filter type="" />
              </add>
            </listeners>
          </source>
          <source name="System.ServiceModel" switchValue="Verbose,ActivityTracing" propagateActivity="true">
            <listeners>
              <add type="System.Diagnostics.DefaultTraceListener" name="Default">
                <filter type="" />
              </add>
              <add name="ServiceModelTraceListener">
                <filter type="" />
              </add>
            </listeners>
          </source>
          <source name="Microsoft.ResourceManagement" switchValue="Verbose,ActivityTracing">
            <listeners>
             
              <add type="System.Diagnostics.DefaultTraceListener" name="Default">
                <filter type="" />
              </add>
              <add name="ServiceModelTraceListener">
                <filter type="" />
              </add>
             
            </listeners>
          </source>
        </sources>
        <sharedListeners>
         
          <add initializeData="C:\Logs\ILMPortal.Client_messages.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" name="ServiceModelMessageLoggingListener" traceOutputOptions="LogicalOperationStack, DateTime,Timestamp, ProcessId, ThreadId, Callstack">
            <filter type="" />
          </add>
          <add initializeData="C:\Logs\ILMPortal.Client_tracelog.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" name="ServiceModelTraceListener" traceOutputOptions="LogicalOperationStack, DateTime,Timestamp, ProcessId, ThreadId, Callstack">
            <filter type="" />
          </add>
         
          <add initializeData="C:\Logs\web_TextOutput.txt" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" name="Text" traceOutputOptions="DateTime, ThreadId">
            <filter type="" />
          </add>
         
        </sharedListeners>
        <trace autoflush="true" />
      </system.diagnostics>

  7. In the web.config file, search for </appSettings>.   ( In a default web.config file for the FIM Portal, you will see the <resourceManagementClient> tag under the </appSettings> tag. )
  8. Insert the below text between the </appSettings> tag and the <resourceManagementClient> tag
  9.   <system.serviceModel>
        <diagnostics wmiProviderEnabled="false">
          <messageLogging logEntireMessage="true" logMalformedMessages="true" logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="true" />
        </diagnostics>
      </system.serviceModel>
  10. Save the web.config file
  11. Execute an IISRESET
    1. Open a Command-Prompt by right clicking and choosing Run As Administrator
    2. Type IISRESET and press the ENTER key

DISABLE TRACING

If you made the backup copy of the web.config file, then you can rename the tracing file to web.config._TracingEnabled. Once you do that, then rename the backup copy back to web.config. If you do this, then you should be able to easily toggle back forth to enable/disable tracing.

Anytime you change the web.config, then you will need to execute an IISRESET from an Administrative Command-Prompt.

ADDITIONAL FIM TRACING ARTICLES

How to enable FIM Service Tracing
How to configure FIM Portal Tracing

Enable Tracing and Viewing Trace Logs

SEE ALSO

Current Forefront Identity Manager 2010 Resources
Current Certificate Lifecycle Manager Resources
GalSync Resource Wiki
PCNS-Password Synchronization Wiki
Self-Service Password Reset (SSPR) Resources