我有一个ASP.Net Core 2 Web应用程序,我正在尝试配置SeriLog以通过appsettings.json文件输出JSON格式。我无法使用标准的SeriLog.Formatting.Json.JsonFormatter或紧凑的SeriLog.Formatting.Compact.CompactJsonFormatter使其正常工作。
我看到有类似的问题在这里被问到,但是似乎没有关于使用appsettings.json的确定答案,而且这个线程已经安静了一年之久(我没有足够的声望来评论以促进更多回应)。
我使用以下SeriLog软件包:
我看到有类似的问题在这里被问到,但是似乎没有关于使用appsettings.json的确定答案,而且这个线程已经安静了一年之久(我没有足够的声望来评论以促进更多回应)。
我使用以下SeriLog软件包:
- Serilog.AspNetCore - 2.1.0
- Serilog.Enrichers.Environment - 2.1.2
- Serilog.Enrichers.Thread - 3.0.0
- Serilog.Formatting.Compact - 1.0.0
- Serilog.Settings.Configuration - 2.4.0
- Serilog.Sinks.RollingFile - 3.3.0
"Serilog": {
"Using": ["Serilog.Sinks.RollingFile"],
"MinimumLevel": {
"Default": "Verbose",
"Override": {
"Microsoft": "Warning",
"System": "Warning"
}
},
"WriteTo": [
{
"Name": "RollingFile",
"Args": {
"pathFormat": "C:\\Logs\\MLSBPortal-{Date}.txt",
"formatter": "Serilog.Formatting.Compact.CompactJsonFormatter, Serilog.Formatting.Compact",
"restrictedToMinimumLevel": "Debug",
"retainedFileCountLimit": "10",
"outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level}] [{ThreadId}] [{SourceContext}] [{SessionId}] [{UserName}]: {Message}{NewLine}{Exception}"
}
}
],
当使用默认的 JSON 格式化程序进行测试时,将格式化行修改为以下内容:
"formatter": "Serilog.Formatting.Json.JsonFormatter, Serilog",
正如在其他多个地方所建议的那样。
我的输出结果很好,但似乎格式设置对输出结果没有任何影响。
我在这里做错了什么,还是这个功能尚未通过配置文件读取来实现?
提前感谢您的任何帮助。