我将尝试将日志消息发送到我的Gmail帐户,但一直无法成功。我尝试更改端口和阈值值,但都不起作用。当我尝试将日志写入文件时,一切正常,因此我认为问题在于log4net.config文件。
我的log4net配置文件包含:
在我的Startup.cs文件中,我有以下内容:
我的log4net配置文件包含:
<log4net>
<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
<to value="mymail@gmail.com" />
<from value="mysendermail@gmail.com" />
<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>
在我的Startup.cs文件中,我有以下内容:
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();
}
}
我做错了什么吗?我尝试了所有方法。