If you are not using the seri log configuration package and want to set up serilog based on app specific configuration use
webHostBuilder.ConfigureLogging((hostingcontext, logging) =>
{
var logSettings = new LogConfiguration();
//my custom section
hostingcontext.Configuration.GetSection("LogSettings").Bind(logSettings);
if (logSettings.Sink.Equals("rollingFile"))
{
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.MinimumLevel.Override("Microsoft", Information)
.Enrich.FromLogContext()
.WriteTo.RollingFile(logSettings.Url)
.CreateLogger();
}
else
{
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.MinimumLevel.Override("Microsoft", Information)
.Enrich.FromLogContext()
.WriteTo.Seq(logSettings.Url)
.CreateLogger();
}
var levelSwitch = new LoggingLevelSwitch();
int.TryParse(logSettings.LogLevel, out var level);
levelSwitch.MinimumLevel = (LogEventLevel)level;
logging.AddSerilog(dispose: true);
});
No comments:
Post a Comment