私のGmailアカウントにログメッセージを送信しようとしていますが、動作しません。ポートの変更やしきい値の変更を試みましたが、機能しません。ファイルにログを書き込もうとするとすべてが問題ないので、問題はlog4net.configファイルにあると思います。Log4Net SmtpAppenderが.netCoreで動作していません
私log4netの設定ファイルが含まれています。私は私のStartup.csファイルで
<log4net>
<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
<to value="[email protected]" />
<from value="[email protected]" />
<subject value="Crash log" />
<smtpHost value="smtp.gmail.com" />
<authentication value="Basic" />
<port value="465" />
<username value="myusername" />
<password value="mypass" />
<bufferSize value="1" />
<EnableSsl value="true"/>
<lossy value="true" />
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="DEBUG"/>
</evaluator>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-5p %d{hh:mm:ss} %message%newline" />
</layout>
</appender>
<root>
<level value="DEBUG"/>
<appender-ref ref="SmtpAppender"/>
</root>
</log4net>
:
var logRepository = LogManager.GetRepository(Assembly.GetEntryAssembly());
XmlConfigurator.Configure(logRepository, new FileInfo("log4net.config"));
そして、私のコード例は次のとおりです。
public class HomeController : Controller
{
private static readonly ILog log = LogManager.GetLogger(typeof(HomeController));
public HomeController()
{
}
public IActionResult Index()
{
return View();
}
public IActionResult About()
{
ViewData["Message"] = "Your application description page.";
ViewData["Title"] = "title";
log.Warn("test test", new NullReferenceException("missing"));
log.Debug("test test", new NullReferenceException("missing"));
log.Error("test test", new NullReferenceException("missing"));
log.Fatal("test test", new NullReferenceException("missing"));
return View();
}
}
私が何かを作っています違う。
GmailのSMTPポート(TLS):587
GmailのSMTPポート(SSL):私は
可能な重複https://stackoverflow.com/questions/15523613/log4net-smtp-appender-not-sending-emails – sgmoore
私も同じ問題を抱えていました。私が調べたところ、.net coreのlog4net libにlog4net.Appender.SmtpAppenderクラスがないことがわかりました。 –