C# 压缩Log4net输出文件

C# 压缩Log4net输出文件,c#,io,log4net,C#,Io,Log4net,一旦log4net RollingFileAppender关闭文件,如何将其压缩为zip(并为其提供密码) 如果需要自定义appender,那么哪个虚拟方法可以处理这个问题?因为.NET中的Zip函数不支持密码压缩,那么您可以使用类似 看看这个答案: 用示例更新 您可以通过执行以下操作来获取日志文件路径: appenderFilePath = ((Hierarchy)LogManager.GetRepository()).Root.Appenders.OfType<RollingFile

一旦
log4net RollingFileAppender
关闭文件,如何将其压缩为
zip
(并为其提供密码)


如果需要自定义
appender
,那么哪个虚拟方法可以处理这个问题?

因为.NET中的Zip函数不支持密码压缩,那么您可以使用类似

看看这个答案:

用示例更新

您可以通过执行以下操作来获取日志文件路径:

appenderFilePath = ((Hierarchy)LogManager.GetRepository()).Root.Appenders.OfType<RollingFileAppender>().FirstOrDefault();

是的,但只有在log4net关闭它之后。
using (var zip = new ZipFile())
{
    zip.Password = "VerySecret!!";
    zip.AddFile(appenderFilePath);
    zip.Save("logs.zip"); 
}