Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
log4Net-类之间的记录器-释放文件_Log4net - Fatal编程技术网

log4Net-类之间的记录器-释放文件

log4Net-类之间的记录器-释放文件,log4net,Log4net,我是log4net新手。这是我的app.config。发生的情况是,在执行switch语句之后,我的logger X停止写入日志文件。我尝试了x.Logger.Repository.Shutdown;,所有这一切都阻止了我的Y连日志记录。我的怀疑是,该文件正在使用中,无法写入下一个日志记录语句,因为它确实在另一个类中开始。再说一次,我是新来的。基本上,它写大约10行,转到另一个具有相同名称的记录器的类,在该类中再工作几行,然后当它返回到原始类时,它停止日志记录。我有点迷路了。另外,我有正确的分区

我是log4net新手。这是我的app.config。发生的情况是,在执行switch语句之后,我的logger X停止写入日志文件。我尝试了x.Logger.Repository.Shutdown;,所有这一切都阻止了我的Y连日志记录。我的怀疑是,该文件正在使用中,无法写入下一个日志记录语句,因为它确实在另一个类中开始。再说一次,我是新来的。基本上,它写大约10行,转到另一个具有相同名称的记录器的类,在该类中再工作几行,然后当它返回到原始类时,它停止日志记录。我有点迷路了。另外,我有正确的分区名称,我正在调用我的日志: 私有静态只读ILog eventLog=LogManager.GetLoggerEventLog

<appender type="log4net.Appender.FileAppender" name="event">
<file value="C:X.log" />
<layout type="log4net.Layout.PatternLayout">
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<conversionpattern value="%d [%t] %-5p %c - %m%n" />
</layout>
</appender>

<appender type="log4net.Appender.FileAppender" name="cLog">
<file value="Y.log" />
<layout type="log4net.Layout.PatternLayout">
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<conversionpattern value="%d [%t] %-5p %c - %m%n" />
</layout>
</appender>

<logger name="EventLog">
<level value="INFO" />
<maximumfilesize value="256KB" />
<param value="INFO" name="Threshold" />
<appender-ref ref="event" />
</logger>

<logger name="crLog">
<level value="INFO" />
<maximumfilesize value="256KB" />
<param value="INFO" name="Threshold" />
<appender-ref ref="cLog" />
</logger>

事实证明,当您调用x.Logger.Repository.Shutdown时;它会删除您在该时间点可能要写入的所有日志。 我将移动x.Logger.Repository.Shutdown,或者找到一种不同的方法来释放我的文件,以便我的应用程序的最后一部分可以使用电子邮件发送该文件