【发布时间】:2017-06-30 18:35:10
【问题描述】:
我在用 C# 编写的控制台应用程序中使用 Serilog.Sinks.Email。 它是 "restrictedToMinimumLevel" = "Warning",并且我在整个程序中都出现了警告和错误消息。
当我昨天运行这个应用程序时,我在运行结束时收到了一封电子邮件(当控制到达 Log.CloseAndFlush() 时),这封电子邮件包含运行期间生成的综合警告和错误。
这是所需的功能,我很高兴我不需要编写实现它的包装类。
当我今天运行相同的脚本时,遇到的每个错误都会收到一封电子邮件。
我对这种古怪的行为感到困惑。下面是我的 App.config 文件的摘录:
<add key="serilog:using:Email" value="Serilog.Sinks.Email" />
<add key="serilog:write-to:Email.fromEmail" value="<email address>" />
<add key="serilog:write-to:Email.toEmail" value="<email address>" />
<add key="serilog:write-to:Email.mailServer" value="<mail server>" />
<add key="serilog:write-to:Email.mailSubject" value="<application name> [{MachineName}] [User: {UserName}]" />
<add key="serilog:write-to:Email.outputTemplate" value="{Timestamp:yyyy-MM-dd HH:mm:ss}:: [{Level:u3}] {Message}{NewLine}" />
<add key="serilog:write-to:Email.restrictedToMinimumLevel" value="Warning" />
我是否应该使用任何配置设置来确保脚本在任何运行结束时始终发送最多一封电子邮件(带有综合警告和错误)?
谁能指出我在这方面可以提供帮助的文档?
【问题讨论】:
标签: c# email configuration serilog