我想實現log4net發送電子郵件。
以下是我的代碼,但它不發送電子郵件。log4net smtp appender不發送電子郵件
<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
<to value="...." />
<from value="..." />
<subject value="Logging Message" />
<smtpHost value="smtp.gmail.com" />
<port value="465"/>
<authentication value="Basic" />
<username value="..."/>
<password value="..."/>
<EnableSsl value="true" />
<bufferSize value="1" />
<lossy value="true" />
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="WARN"/>
</evaluator>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %level %logger - %message%newline%exception" />
</layout>
</appender>
和
<root>
<level value="WARN" />
<appender-ref ref="SmtpAppender" />
</root>
在AssemblyInfo.cs中
[assembly: log4net.Config.XmlConfiguratorAttribute(Watch = true)]
,這就是我如何創建日誌對象
private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
此配置
被用於文件輸出工作正常即RollingFileAppender但不適用於SmtpAppender。
N我嘗試了很多來自互聯網的解決方案,但並沒有真正的幫助。
請讓我看看正確的方向。 thankx提前:)
什麼呢SMTP設置看起來像你的配置文件,您可以顯示你所需要的配置的那部分'SMTP.Appender' – MethodMan 2013-03-20 12:33:27
「不發送電子郵件」真的很模糊。問題可能出現在很多地方。您的第一步是使用您可以控制的SMTP主機。這將縮小問題是否使用appender與SMTP主機是否拒絕消息。 (這是一個非常大的差異。)嘗試使用類似smtp4dev(http://smtp4dev.codeplex.com)作爲本地SMTP主機來測試記錄器是否至少按照您認爲正在執行的操作。 – David 2013-03-20 12:34:22
據我所知,Gmail只支持通過加密連接的SMTP。我懷疑樸素ap ap可以建立它。 – alex 2013-03-20 12:35:03