有没有办法将Serilog格式的结构化数据转换成格式化的输出?
我最近一直在Serilog中使用结构化数据结构,即使它有一个优点,它是紧凑的大型数据结构(5个属性或更多)很难在控制台/文件中读取而不用以后格式化。
假设我只在dev上启用它。
https://github.com/serilog/serilog/wiki/Structured-Data
由此:
{ "Fruit": ["Apple", "Pear", "Orange"] }
对此:
{
"Fruit": [
"Apple",
"Pear",
"Orange"
]
}
修改
目前我正在使用JsonConvert.SerializeObject({...}, Formatting.Indented)
,但我想摆脱这一点,原因如控制台软件包的正确着色,更快的序列化,延迟序列化等。
答案 0 :(得分:3)
我似乎记得几年前我们必须在工作中做一个自定义格式化程序来修改serilog的默认json输出。我不记得我们遇到的确切问题。
您可以查看https://github.com/serilog/serilog/wiki/Formatting-Output,如果您还没有
我已经开始使用https://getseq.net/来查看开发过程中的结构化输出,我强烈推荐它。