[英]Serilog JsonFormatter in an ASP.Net Core 2 not being applied from appsettings file
我有一個ASP.Net Core 2 Web應用程序,我在其中嘗試將SeriLog配置為通過appsettings.json文件配置的JSON格式輸出。 我無法使它與標准Serilog.Formatting.Json.JsonFormatter或緊湊型Serilog.Formatting.Compact.CompactJsonFormatter一起使用。
我看到有一個類似的問題問在這里 ,但似乎是使用appsettings.json沒有確鑿的答案,而線程一年多了安靜(我沒有足夠的信譽發表評論我要輕推進一步答復)。
我正在使用以下SeriLog軟件包:
我的appsettings.json文件的SeriLog部分讀取:
"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",
正如在其他多個地方建議的那樣。
我的輸出寫得很好,但是格式化程序設置似乎對輸出沒有任何影響。
我在這里做錯什么了嗎,還是尚未通過配置文件讀取此功能?
在此先感謝您的幫助。
事實證明,(當前)不能同時指定格式化程序和outputTemplate(如在https://github.com/serilog/serilog-sasplog-aspnetcore/issues/31上闡明)。
希望這種情況將來可能會改變...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.