2016-11-27 2 views
0

J'ai essayé d'utiliser la classe CustomTraceListener pour avoir mon propre écouteur de trace personnalisé en place. La configuration se fait selon MSDN, mais il échoue avec un dicton d'erreur:Implémentation de la classe CustomTraceListener pour le suivi des requêtes HTTP

System.Configuration.ConfigurationErrorsException was unhandled by user code 
    HResult=-2146232062 
    Message=Could not create TraceLib.DebugTraceListener,TraceLib. 
    Source=mscorlib 
    BareMessage=Could not create TraceLib.DebugTraceListener,TraceLib. 
    Line=0 
    StackTrace: 
Server stack trace: 
    at System.Diagnostics.TraceUtils.GetRuntimeObject(String className, Type baseType, String initializeData) 
    at System.Diagnostics.TypedElement.BaseGetRuntimeObject() 
    at System.Diagnostics.ListenerElement.GetRuntimeObject() 
    at System.Diagnostics.ListenerElement.GetRuntimeObject() 
    at System.Diagnostics.ListenerElementsCollection.GetRuntimeObject() 
    at System.Diagnostics.TraceSource.Initialize() 
    at System.Net.Logging.InitializeLogging() 
    at System.Net.Logging.get_On() 
    at System.Net.WebRequest.Create(Uri requestUri, Boolean useUriBase) 

Config:

<system.diagnostics> 
<sources> 
<source name="System.Net" > 
<listeners> 
<add name="MyTrace"/> 
</listeners> 
</source> 
</sources> 
<sharedListeners> 
<add name="MyTrace" type="TraceLib.DebugTraceListener,TraceLib" initializeData="System.Net.trace.log"/> 
</sharedListeners> 
<switches> 
<add name="System.Net" value="Information" /> 
</switches> 
</system.diagnostics> 

Un indice?

Répondre

0

Correction de la config et cela a fonctionné!

<system.diagnostics> 
<sources> 
<source name="System.Net" > 
<listeners> 
<add name="MyTrace"/> 
</listeners> 
</source> 
</sources>  
<sharedListeners> 
<add name="MyTrace" type="TraceLib.DebugTraceListener,TraceLib" /> 
</sharedListeners> 
<switches> 
<add name="System.Net" value="Information" /> 
</switches> 
</system.diagnostics> 

L'attribut "initializeData" n'était pas requis.