发生日志4网络错误



下面的代码使日志文件格式化日期时间(例如: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);
}
}
}

我的网络配置如下:

<?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 value="yyMMdd_HHmmss'.log'" />

我相信这将每秒制作一个新日志。由于这是您在日志日期模式中指定的最小值。

如果您只想要一个日志,请禁用滚动! 或者,如果您想每天使用日志:

<datePattern value="yyMMdd'.log'" />

我认为您需要查看如何使用log4net的配置。当前配置看起来像是用于按日期滚动文件追加器。

如果您不关心日期,请按照log4net网站中描述的指南进行操作:https://logging.apache.org/log4net/release/config-examples.html#fileappender

最新更新