I would like to redirect all log4net protocols to System.Diagnostics Trace classes. My understanding of what I should do is point log4net to system.diagnostics.traceappender, then I configure system.diagnostics. Here are the important parts in my web.config:
<log4net> <appender name="trace" type="log4net.Appender.TraceAppender, log4net"> <immediateFlush value="true" /> <layout type="log4net.Layout.PatternLayout,log4net"> <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p %c{1}:%L - %m%n" /> </layout> </appender> <root> <priority value="DEBUG"/> <appender-ref ref="trace"/> </root> </log4net> <system.diagnostics> <sources> <source name="Console" switchName="DefaultSwitch"> <listeners> <add type="System.Diagnostics.DefaultTraceListener" name="Default"> <filter type="" /> </add> </listeners> </source> <source name="Metabase" switchName="MetabaseSwitch"> <listeners> <add name="MetabaseListener" /> <remove name="Default" /> </listeners> </source> <source name="TextFile" switchName="TextFileSwitch"> <listeners> <add name="TextFileListener" /> <remove name="Default" /> </listeners> </source> </sources> <sharedListeners> <add name ="TextFileListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="TextFile.log" /> <add name="MetabaseListener" type="XXX.Manufacturing.Utilities.Diagnostics.MetabaseTraceListener,XXX.Metabase.Proxies" /> </sharedListeners> <switches> <add name="MetabaseSwitch" value="Information" /> <add name="DefaultSwitch" value="Verbose" /> <add name="TextFileSwitch" value="Verbose"/> </switches> </system.diagnostics>
Did I miss an important step related to this? If I go around log4net and just create a new tracing resource, it will go to my sources.
log4net system.diagnostics
Justin holbrook
source share