我正在.net core 2.0应用程序中使用log4net,如下所示:
启动文件:
使用Microsoft.Extensions.Logging;
public class Startup
{
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddLog4Net();
}
}
log4net.config
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="RollingFile" type="log4net.Appender.FileAppender">
<file value="C:\Logs\app.log" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-5p %d{hh:mm:ss} %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="RollingFile" />
</root>
</log4net>
控制器写日志:
public class MyController : Controller
{
private static readonly log4net.ILog log =
log4net.LogManager.GetLogger(typeof(MyController));
[HttpGet("api/value")]
public IEnumerable<string> Get()
{
log.Debug("logging entry");
return new string[] { "from api..." };
}
}
以上方法有效,但仅创建一个文件。我希望它创建日常文件,例如appname + todaysdays.log。我们该怎么做。
我尝试添加:
<param name="DatePattern" value="dd.MM.yyyy'.log'" />
<staticLogFileName value="false" />
但是仍然不会创建带有日期的文件。