TraceListener
![Build status](https://camo.githubusercontent.com/55ea611538fbb0899a678053395b98f64dcf2a6ccb0fcc668ceeef114c756ad6/68747470733a2f2f696d672e736869656c64732e696f2f6170707665796f722f63692f766f7373616430312f736572696c6f6774726163656c697374656e65722f6d61737465722e737667)
Serilog This library provides a System.Diagnostics.TraceListener
implementation that outputs to Serilog. This means that output from third-party libraries using System.Diagnostics.Trace
can be collected through the Serilog pipeline.
Getting started
Before using this package, Serilog needs to be installed and configured in the application.
Installing from NuGet
The package on NuGet is SerilogTraceListener:
Install-Package SerilogTraceListener -DependencyVersion Highest
Enabling the listener (code)
After configuring Serilog, create a SerilogTraceListener
and add it to the System.Diagnostics.Trace.Listeners
collection:
var listener = new global::SerilogTraceListener.SerilogTraceListener();
Trace.Listeners.Add(listener);
This will write the events through the static Log
class. Alternatively, a specific logger instance can be used instead:
var listener = new SerilogTraceListener.SerilogTraceListener();
Enabling the listener (XML)
To enable the listener through XML in App.config
or Web.config
, add it to the system.diagnostics/trace/listeners
collection:
<system.diagnostics>
<trace autoflush="true">
<listeners>
<add name="Serilog"
type="SerilogTraceListener.SerilogTraceListener, SerilogTraceListener"
initializeData="Some.Source.Context" />
</listeners>
</trace>
</system.diagnostics>
A SourceContext
value can optionally be provided through initializeData
.