有没有办法安排Log4Net自动从项目中获取日志?

时间:2014-06-24 10:32:55

标签: c# log4net

我在我的项目中使用Log4Net(它是Windows Service)进行日志记录,我想知道当满足某个条件时,有没有办法自动将日志翻转到新文件?< / p>

1 个答案:

答案 0 :(得分:1)

您可以实现自己的日志记录追加器,例如通过继承您想要的appender,并在那里实现您的调度逻辑。

有些事情(未经测试):

public class ScheduledAppender : FileAppender
{
    protected override void Append(LoggingEvent loggingEvent)
    {
       if (SchedulingLogic.ItIsTimeToLog) // Your scheduling logic here
       {
           base.Append(loggingEvent);
       }
    }
} 

为了配置计划,您可以为appender定义自定义配置属性,如下所示:

Getting values from Log4Net configuration

此链接应为您提供编写自己的appender的入口点 http://www.codeproject.com/Articles/406634/Creating-a-custom-log-net-appender