2
我在用C#編寫一個控制檯應用程序使用Serilog.Sinks.Email結束單一的郵件。 這是「restrictedToMinimumLevel」 =「警告」,我有整個程序灑警告和錯誤消息。Serilog電子郵件水槽:在應用
當我昨天運行這個應用程序時,在運行結束時(當控制到達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" />
有,我應該使用以便確保腳本始終發送至多一個電子郵件(與合併的警告和錯誤)的任何配置設置任何運行結束?
任何人都可以請指點我可以幫助這方面的文檔?
我曾嘗試這個。我很抱歉在帖子中沒有提及這一點。 實際上,它會爲每種類型的語句生成一封電子郵件消息: Log.Error(「遇到錯誤。」); 在過去,我會在腳本的末尾得到一個統一的錯誤消息。 我試圖defaultBatchPostingLimit的較大值,但這並沒有幫助。 – Christna