下面的代码使日志文件格式化为日期时间(例如:yyyyMMdd_HHmmss.log)但结果存在问题。* * 我只想制作一个日志文件当我运行下面的代码时 * * * * 但是,创建了两个或多个日志文件.* *(例如:20170721_14 * * 22 * * 30.log、20170721_14 * * 23 * * 00.log、20170721 .....)我不知道为什么
我想解决我的问题
如何修复我的代码?
C#代码:
namespace ConsoleApplication1
{
class Program
{
static readonly ILog Logger = LogManager.GetLogger("DebugLogger");
static void Main(string[] args)
{
int i;
for (i=1;i<=50000000;i++)
Logger.DebugFormat("{0},{1},{2}", 999, 997, 996);
}
}
}
我的web.config如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
<appender name="DebugAppender" type="log4net.Appender.RollingFileAppender">
<file value=""/>
<datePattern value="yyMMdd_HHmmss'.log '" />
<staticLogFileName value="false" />
<appendToFile value="false" />
<rollingStyle value="Date"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message%newline">
</conversionPattern>
</layout>
</appender>
<logger name="DebugLogger">
<level value="ALL" />
<appender-ref ref="DebugAppender" />
</logger>
</log4net>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
</configuration>
您已选择“日期”作为滚动类型。所以它会根据 datePattern 分离不同的日志:
<datePattern value="yyMMdd_HHmmss'.log'" />
我相信这会每秒钟生成一个新日志。因为这是您在日志日期模式中指定的最小值。
如果您只想要一个日志,请禁用滚动!或者,如果您想每天使用日志:
<datePattern value="yyMMdd'.log'" />
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句