public Startup(IConfiguration configuration, IWebHostEnvironment environment) { Configuration = configuration; Environment = environment; _loggerBuilder = new ApplicationLoggerBuilder(configuration, environment); }
private void ConfigureLoggers(IServiceCollection services) { var builder = new ApplicationLoggerBuilder(); IConfiguration configuration = new ConfigurationBuilder().Build(); builder.ConfigureLoggingServices(configuration, services); var hostingEnvironment = new WebHostEnvironment() { EnvironmentName = this.options.EnvironmentName }; const LogLevel minLevel = LogLevel.Trace; services.AddLogging(logging => { logging.ClearProviders(); if (options.LogToTestOutput) { logging.AddXunit(output, minLevel); } if (options.LogToConsole) { logging.AddConsole(); } if (options.LogToSerilog) { var loggerConfiguration = new LoggerConfiguration(); builder.ConfigureLogging(loggerConfiguration, hostingEnvironment); logging.AddSerilog(loggerConfiguration.CreateLogger()); } }); services.PostConfigureAll <ConsoleLoggerOptions>(options => { options.IncludeScopes = true; }); services.PostConfigureAll <LoggerFilterOptions>(options => { options.MinLevel = minLevel; options.Rules.Clear(); }); }