我知道可以在app.config文件(AppSettings部分)中设置Serilog接收器,并且标量类型非常简单,但如何使用复杂的接收器(IFormatProvider)等等。)。有人知道如何处理这个问题吗?有可能吗?
我试图模拟这个例子
ILogger logger = new LoggerConfiguration()
.Enrich.WithExceptionDetails()
.WriteTo.Sink(new RollingFileSink(
@"C:\logs",
new JsonFormatter(renderMessage: true))
.CreateLogger();
但仅使用app.config。
答案 0 :(得分:1)
您可以使用类似JsonRollingFile的内容。
<configuration>
<appSettings>
<add key="serilog:using:Json" value="Serilog.Sinks.Json" />
<add key="serilog:write-to:JsonRollingFile.pathFormat" value="C:\Logs\myapp-{Date}.jsnl" />
</appSettings>
</configuration>