Serilog JsonFormatter 是否支持 Formatting.Indented?

Does Serilog JsonFormatter support Formatting.Indented?

我有这样的代码

        var log = new LoggerConfiguration()
            .MinimumLevel.Debug()
            .Enrich.WithExceptionDetails()
            .WriteTo.RollingFile(new JsonFormatter(renderMessage: true),"log-{Date}.txt")                
            .CreateLogger();

是否可以将 Json 结果格式化为 缩进

否; JSON 格式化程序的目标是生成以换行符分隔的 JSON 流供其他程序使用 - 人类可读性不是主要考虑因素。

但是,您可以通过 jq 之类的管道将它们打印出来:

cat log-20170420.txt | jq '.'

(chocolatey install jqsudo apt-get install jq 取决于您的 OS。)