.NET Serilog: CreateLogger () теперь выдает, если вызывается более одного раза - PullRequest
0 голосов
/ 11 мая 2018
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 () вызывается более одного раза»

...