如何从 app.config 文件在 Serilog 中设置 formatProvider 属性
How to set formatProvider property in Serilog from app.config file
我知道可以在 app.config 文件(AppSettings 部分)中设置 Serilog 接收器,并且它对于标量类型非常简单,但是如何使用复杂类型(IFormatProvider 等)。有谁知道如何处理这个问题,这有可能吗?
我正在尝试模拟这个例子
ILogger logger = new LoggerConfiguration()
.Enrich.WithExceptionDetails()
.WriteTo.Sink(new RollingFileSink(
@"C:\logs",
new JsonFormatter(renderMessage: true))
.CreateLogger();
但仅使用 app.config。
您可以为此使用 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>
我知道可以在 app.config 文件(AppSettings 部分)中设置 Serilog 接收器,并且它对于标量类型非常简单,但是如何使用复杂类型(IFormatProvider 等)。有谁知道如何处理这个问题,这有可能吗?
我正在尝试模拟这个例子
ILogger logger = new LoggerConfiguration()
.Enrich.WithExceptionDetails()
.WriteTo.Sink(new RollingFileSink(
@"C:\logs",
new JsonFormatter(renderMessage: true))
.CreateLogger();
但仅使用 app.config。
您可以为此使用 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>