1515
1616namespace Serilog . Extensions . Logging
1717{
18- class SerilogLoggerProvider : ILoggerProvider , ILogEventEnricher
18+ /// <summary>
19+ /// An <see cref="ILoggerProvider"/> that pipes events through Serilog.
20+ /// </summary>
21+ public class SerilogLoggerProvider : ILoggerProvider , ILogEventEnricher
1922 {
20- public const string OriginalFormatPropertyName = "{OriginalFormat}" ;
23+ internal const string OriginalFormatPropertyName = "{OriginalFormat}" ;
2124
2225 // May be null; if it is, Log.Logger will be lazily used
2326 readonly ILogger _logger ;
2427 readonly Action _dispose ;
2528
29+ /// <summary>
30+ /// Construct a <see cref="SerilogLoggerProvider"/>.
31+ /// </summary>
32+ /// <param name="logger">A Serilog logger to pipe events through; if null, the static <see cref="Log"/> class will be used.</param>
33+ /// <param name="dispose">If true, the provided logger or static log class will be disposed/closed when the provider is disposed.</param>
2634 public SerilogLoggerProvider ( ILogger logger = null , bool dispose = false )
2735 {
2836 if ( logger != null )
@@ -37,16 +45,19 @@ public SerilogLoggerProvider(ILogger logger = null, bool dispose = false)
3745 }
3846 }
3947
48+ /// <inheritdoc />
4049 public FrameworkLogger CreateLogger ( string name )
4150 {
4251 return new SerilogLogger ( this , _logger , name ) ;
4352 }
4453
54+ /// <inheritdoc />
4555 public IDisposable BeginScope < T > ( T state )
4656 {
4757 return new SerilogLoggerScope ( this , state ) ;
4858 }
4959
60+ /// <inheritdoc />
5061 public void Enrich ( LogEvent logEvent , ILogEventPropertyFactory propertyFactory )
5162 {
5263 for ( var scope = CurrentScope ; scope != null ; scope = scope . Parent )
@@ -58,7 +69,7 @@ public void Enrich(LogEvent logEvent, ILogEventPropertyFactory propertyFactory)
5869#if ASYNCLOCAL
5970 readonly AsyncLocal < SerilogLoggerScope > _value = new AsyncLocal < SerilogLoggerScope > ( ) ;
6071
61- public SerilogLoggerScope CurrentScope
72+ internal SerilogLoggerScope CurrentScope
6273 {
6374 get
6475 {
@@ -72,7 +83,7 @@ public SerilogLoggerScope CurrentScope
7283#else
7384 readonly string _currentScopeKey = nameof ( SerilogLoggerScope ) + "#" + Guid . NewGuid ( ) . ToString ( "n" ) ;
7485
75- public SerilogLoggerScope CurrentScope
86+ internal SerilogLoggerScope CurrentScope
7687 {
7788 get
7889 {
@@ -86,6 +97,7 @@ public SerilogLoggerScope CurrentScope
8697 }
8798#endif
8899
100+ /// <inheritdoc />
89101 public void Dispose ( )
90102 {
91103 _dispose ? . Invoke ( ) ;
0 commit comments