我正在尝试连接我的接收器,似乎对于我的滚动文件接收器,我的调试消息未被记录(仅限信息及以上)。我的配置错了吗?
<!-- Serilog Configuration -->
<add key="serilog:using:Email" value="Serilog.Sinks.Email" />
<!-- Configure Serilog Email Sink -->
<add key="serilog:write-to:Email" />
<add key="serilog:write-to:Email.mailServer" value="***" />
<add key="serilog:write-to:Email.toEmail" value="***" />
<add key="serilog:write-to:Email.fromEmail" value="***" />
<add key="serilog:write-to:Email.mailSubject" value="Comply360 Portal Endpoint (DEV)" />
<add key="serilog:write-to:Email.restrictedToMinimumLevel" value="Warning" />
<add key="serilog:write-to:Email.outputTemplate" value="{Timestamp:HH:mm:ss} [{Level}] [{SourceContext}] [{CorrelationId}] {Message}{NewLine}{Exception}" />
<!-- Configure Serilog RollingFile Sink -->
<add key="serilog:write-to:RollingFile" />
<add key="serilog:write-to:RollingFile.restrictedToMinimumLevel" value="Debug" />
<add key="serilog:write-to:RollingFile.pathFormat" value="C:\Logs\comply360-portal-{Date}.txt" />
<add key="serilog:write-to:RollingFile.outputTemplate" value="{Timestamp:HH:mm:ss} [{Level}] [{SourceContext}] [{CorrelationId}] {Message}{NewLine}{Exception}" />
答案 0 :(得分:2)
没有什么&#34;错误&#34;使用RollingFile
接收器配置本身 - 它只会记录日志级别为Debug
或更高的消息(即它不会记录Verbose
消息)。
但是,Serilog的最低日志级别一般为Information
,因此它甚至不会发送到您的接收器。
在您的情况下,您需要将Serilog的默认最低级别更改为至少Debug
:
<add key="serilog:minimum-level" value="Debug" />
您的最终配置应如下所示:
<add key="serilog:minimum-level" value="Debug" />
<add key="serilog:write-to:RollingFile" />
<add key="serilog:write-to:RollingFile.restrictedToMinimumLevel" value="Debug" />
<add key="serilog:write-to:RollingFile.pathFormat" value="C:\Logs\log-portal-{Date}.txt" />
<add key="serilog:write-to:RollingFile.outputTemplate" value="{Timestamp:HH:mm:ss} [{Level}] [{SourceContext}] [{CorrelationId}] {Message}{NewLine}{Exception}" />
当然,如果您以后决定添加记录Verbose
及以上邮件的任何接收器,您也需要将最低级别更改为Verbose
。
即。 serilog:minimum-level
应该始终是所有接收器中的最低级别。