使用ReadFrom.KeyValuePairs配置SeriLog失败

时间:2016-05-12 09:09:24

标签: c# serilog

我试图使用KeyValuePairs配置SeriLog,如下所示:
    var config = new LoggerConfiguration().ReadFrom.KeyValuePairs(cfg.SeriLogSettings);
其中SeriLogSettings的类型为Dictionary<string, string>

从该yaml读取键值对 minimum-level: 'Verbose'
using:_CommandLineSettingsSerilogFullNetFx: 'Serilog.FullNetFx'
write-to:ColoredConsole.outputTemplate: '{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level}] {CorrelationId}: {Message}{NewLine}{Exception}'
write-to:RollingFile.pathFormat: '..\..\LogsTests-{Date}.log'
write-to:RollingFile.outputTemplate: '{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level}] {CorrelationId}: {Message}{NewLine}{Exception}'
enrich:FromLogContext: ''

然而,在ColoredConsole中,当像这样记录时,没有填写CorrelationId(但是占位符出现) using (LogContext.PushProperty("CorrelationId", "YamlTest"))
{ logger.Information("Yaml config test"); }

在代码中配置时工作正常 而且对于RollingFile,不会拾取outputTemplate,并且{CorrelationId}不会出现在日志文件中(甚至不是占位符)

任何人都有使用可能有建议的KeyValuePairs的经验

0 个答案:

没有答案