public static IMyLoggerProviderBuilder AddPredefinedMySerilog(this IMyLoggerProviderBuilder builder) { return(builder .AddDefaultMySerilog() .AddInOutMySerilog() .AddHealthCheksMySerilog() ); }
public static IMyLoggerProviderBuilder AddHealthCheksMySerilog(this IMyLoggerProviderBuilder builder) { builder.AddMyLoggerProvider(MyLoggerConstants.HealthChecksLoggerName, (serviceProvider, name) => { var factory = serviceProvider.GetRequiredService <IMyLoggerProviderFactory>(); return(factory.CreateProvider(name)); }); return(builder); }
public static IMyLoggerProviderBuilder AddNamedMyLoggerProvider(this IMyLoggerProviderBuilder builder, string providerName) { builder.AddMyLoggerProvider(providerName, (serviceProvider, name) => { var factory = serviceProvider.GetRequiredService <IMyLoggerProviderFactory>(); var options = serviceProvider.GetRequiredService <IOptions <MyLoggerFactoryOptions> >(); var registration = options.Value.Registrations.Single(registration => registration.Name == name); return(factory.CreateProvider(registration)); }); return(builder); }
public static IMyLoggerProviderBuilder AddMyLoggerProvider <T>(this IMyLoggerProviderBuilder builder, string name) where T : class, IMyLoggerProvider { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (name == null) { throw new ArgumentNullException(nameof(name)); } return(builder.Add(new MyLoggerProviderRegistration(name, s => ActivatorUtilities.GetServiceOrCreateInstance <T>(s)))); }
public static IMyLoggerProviderBuilder AddMyLoggerProvider(this IMyLoggerProviderBuilder builder, string name, IMyLoggerProvider instance) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (name == null) { throw new ArgumentNullException(nameof(name)); } if (instance == null) { throw new ArgumentNullException(nameof(instance)); } return(builder.Add(new MyLoggerProviderRegistration(name, instance))); }
public static IMyLoggerProviderBuilder AddMyLoggerProvider(this IMyLoggerProviderBuilder builder, string name, Func <IServiceProvider, string, IMyLoggerProvider> factory) { if (builder == null) { throw new ArgumentNullException(nameof(builder)); } if (name == null) { throw new ArgumentNullException(nameof(name)); } if (factory is null) { throw new ArgumentNullException(nameof(factory)); } return(builder.Add(new MyLoggerProviderRegistration(name, s => factory(s, name)))); }
public static IMyLoggerProviderBuilder AddHealthCheksMyLoggerProvider(this IMyLoggerProviderBuilder builder) => builder.AddNamedMyLoggerProvider(MyLoggerConstants.HealthChecksLoggerName);
public static IMyLoggerProviderBuilder AddInOutMyLoggerProvider(this IMyLoggerProviderBuilder builder) => builder.AddNamedMyLoggerProvider(MyLoggerConstants.InOutLoggerName);
public static IMyLoggerProviderBuilder AddDefaultMyLoggerProvider(this IMyLoggerProviderBuilder builder) => builder.AddNamedMyLoggerProvider(MyLoggerConstants.DefaultLoggerName);