我正在尝试实现 log4net 来发送电子邮件。
以下是我的代码,但它不发送电子邮件。
<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 我已经尝试了很多来自互联网的解决方案,但并不是很有帮助。
请告诉我正确的方向。提前谢谢 :)
最佳答案
我正在使用一个非常相似的附加程序将 SMTP 消息发送到 Gmail,但在我的例子中我使用了不同的端口:
<port value="587"/>
所有其他设置都是相同的,所以试试看它是否适合您。这是 Gmail 用于 TLS 的端口,referenced here .
关于c# - log4net smtp appender 不发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15523613/