如何在不使用DotNetZip的情况下压缩Log4net输出文件?

时间:2014-06-30 05:18:38

标签: c# log4net

我知道我可以使用DotNetZip来完成,但我想知道是否有其他方法可以使用log4net RollingFileAppender压缩DotNetZip输出wiyhot? 因为我的申请是Windows service,当我使用时:

  using (var zip = new ZipFile())
        {

            zip.AddFile(appenderFilePath);
            zip.Save("logs.zip");
        }

OnStart方法中,它给了我错误:

  

错误1053:服务未及时响应启动或控制请求。

我认为当我在using (var zip = new ZipFile())中添加Onstrat时会导致错误,所以我想用其他方式,还有其他方法吗?

1 个答案:

答案 0 :(得分:1)

当使用我的通灵调试技巧时,我会说当你试图压缩它时你的log4net zip文件被锁定了。将其添加到log4net配置(appender):

<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />