【发布时间】:2019-12-04 15:30:39
【问题描述】:
我正在尝试将Serilog 配置为能够推送属性,但在日志中仅显示其中一些属性。
目前我的serilog配置如下:
Log.Logger = new LoggerConfiguration().Enrich.FromLogContext()
.WriteTo.File(logpath)
.WriteTo
.Console(outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level:u3}] {Properties} {Message}")
.CreateLogger();
假设我有一个名为MyProperty 的属性,我只想将它显示在日志中:
string MyProperty="some value";
string MyOtherProperty="some other value";
LogContext.Push("MyProperty",MyProperty);
LogConetext.Push("MyOtherProperty",MyOtherProperty);
当我开始记录时,Properties 部分将如下所示:
`{SourceContext= "[something]",Myproperty=[...],MyOtherProperty=[...]}`
如何将模板设置为仅显示 MyProperty(甚至不显示 LogContext)?
我试过这样无济于事:
outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level:u3}] {Properties:MyProperty} {Message}")
【问题讨论】:
标签: templates asp.net-core logging serilog