【问题标题】:log4net gmail smtp appender do not sending emailslog4net gmail smtp appender 不发送电子邮件
【发布时间】:2016-12-09 11:18:25
【问题描述】:

我正在尝试使用 log4net 的 SmtpAppender 来通过 Gmail 发送日志。但它不起作用 - 我没有收到任何电子邮件。内部日志没有显示任何错误,所以我什至不确定它是否失败。
这是配置:

<appSettings>
    <add key="log4net.Internal.Debug" value="true" />
 </appSettings>
 <system.diagnostics>
  <trace autoflush="true">
   <listeners>
    <add name="tracer" 
     type="System.Diagnostics.TextWriterTraceListener"
     initializeData="D:\\Dev\\Camps\\log4net.log" />
    </listeners>
   </trace>
 </system.diagnostics>
  <log4net>
    <root>
      <level value="ALL" />
      <appender-ref ref="SmtpAppender" />
    </root>
    <appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
      <authentication value="Basic" />
      <username value="...@gmail.com" />
      <password value="..." />
      <to value="...@gmail.com" />
      <from value="...@gmail.com" />
      <subject value="log4net message from Camps.DAL" />
      <smtpHost value="smtp.gmail.com" />
      <port value="587"/>
      <bufferSize value="1" />
      <EnableSsl value="true"/>
      <lossy value="false" />
      <evaluator type="log4net.Core.LevelEvaluator">
        <threshold value="ALL"/>
      </evaluator>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%newline%date [%thread] %-5level %logger [%property{NDC}] - %message%newline%newline%newline" />
      </layout>
    </appender>
  </log4net>

【问题讨论】:

  • 如果您在您的 gmail 帐户上启用了 2FA,您需要创建和使用应用程序密码,而不是您的普通密码。

标签: email gmail log4net log4net-configuration log4net-appender


【解决方案1】:

您似乎必须使用您的用户名而不是您的电子邮件地址:

<username value="...@gmail.com" /> <<---- username, not email address

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-19
    • 1970-01-01
    • 2017-02-09
    • 2016-07-14
    • 1970-01-01
    • 1970-01-01
    • 2016-10-25
    • 1970-01-01
    相关资源
    最近更新 更多