LoggerConfiguration loggerConfiguration = new LoggerConfiguration()
.Enrich.With(new LogEnricher(User: userId, Name: Name));
_Logger = loggerConfiguration
.Enrich.WithProperty("TimeStamp", DateTime.UtcNow)
.Enrich.WithProperty("Level", LogLevel.Error)
.WriteTo.Email(
connectionInfo: new EmailConnectionInfo()
{
EmailSubject = "",
ToEmail = "",
MailServer = "",
NetworkCredentials = "",
FromEmail = "",
IsBodyHtml = true,
EnableSsl = false
},
outputTemplate: outputTemplate,
batchPostingLimit: 1,
restrictedToMinimumLevel: LogEventLevel.Verbose
).CreateLogger();
_Logger = loggerConfiguration
.Enrich.WithProperty
.Enrich.With(new LogEnricher(currentUser: userId, moduleName: moduleName))
.Enrich.WithProperty("TimeStamp", DateTime.UtcNow)
.Enrich.WithProperty("Level", logLevel)
.WriteTo.MSSqlServer(
connectionString: "ConnectionString",
tableName: "someTable",
columnOptions: columnOptions,
restrictedToMinimumLevel: LogEventLevel.Error
).CreateLogger();
Сначала я хотел отправить сообщение об ошибке, а затем войти в базу данных, используя serilog CreateLogger (). Я использую тот же экземпляр "LoggerConfiguration" для электронной почты и БД. Это работало нормально в Serilog 1.5. После обновления до Serilog 2.3.0 теперь выдается сообщение об ошибке «CreateLogger () вызывается более одного раза»