<?xml version="1.0" encoding="utf-8"?>
<configuration>
   
   <configSections>
      <section
         name="loggingConfiguration"
         type="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.LoggingSettings, Microsoft.Practices.EnterpriseLibrary.Logging, Version=6.0.1304, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
   </configSections>

   <loggingConfiguration
      name="Logging Application Block"
      tracingEnabled="true"
      defaultCategory="General"
      logWarningsWhenNoCategoriesMatch="true">

      <listeners>
         <!-- Do not change the 'name' attribute of the 'add' elements. It's used as an id. -->
         <!-- The 'fileName' will be preserved but the directory of the file will be changed at runtime.  -->
         <add
            name="General Info TraceListener" 
            fileName="general.log" 
            header="----------------------------------------"
            footer="----------------------------------------" 
            formatter="Text Formatter"
            listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.FlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=6.0.1304, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
            traceOutputOptions="None" 
            type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.FlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=6.0.1304, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
            />
         
         <add 
            name="SOAP TraceListener"
            fileName="soap.log" 
            header="----------------------------------------"
            footer="----------------------------------------" 
            formatter="Text Formatter"
            listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.FlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=6.0.1304, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
            traceOutputOptions="None" 
            type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.FlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=6.0.1304, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
            />
      </listeners>
      
      <formatters>
         <add 
            name="Text Formatter"
            template="Timestamp: {timestamp}&#xD;&#xA;Message: {message}&#xD;&#xA;Category: {category}&#xD;&#xA;Priority: {priority}&#xD;&#xA;EventId: {eventid}&#xD;&#xA;Severity: {severity}&#xD;&#xA;Title:{title}&#xD;&#xA;Machine: {machine}&#xD;&#xA;Application Domain: {appDomain}&#xD;&#xA;Process Id: {processId}&#xD;&#xA;Process Name: {processName}&#xD;&#xA;Win32 Thread Id: {win32ThreadId}&#xD;&#xA;Thread Name: {threadName}&#xD;&#xA;Extended Properties: {dictionary({key} - {value}&#xD;&#xA;)}"
            type="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter, Microsoft.Practices.EnterpriseLibrary.Logging, Version=6.0.1304, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
      </formatters>
      
      <categorySources>
         <add switchValue="All" name="Soap">
            <listeners>
               <add name="SOAP TraceListener" />
            </listeners>
         </add>
         
         <add switchValue="All" name="General">
            <listeners>
               <add name="General Info TraceListener" />
            </listeners>
         </add>
      </categorySources>
      
      <specialSources>
         <allEvents switchValue="All" name="All Events" />
         
         <notProcessed switchValue="All" name="Unprocessed Category" />
         
         <errors switchValue="All" name="Logging Errors &amp; Warnings">
            <listeners>
               <add name="General Info TraceListener" />
            </listeners>
         </errors>
      </specialSources>
   </loggingConfiguration>
</configuration>