首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何以编程方式强制log4net释放日志文件以便访问?

如何以编程方式强制log4net释放日志文件以便访问?
EN

Stack Overflow用户
提问于 2019-05-23 00:52:33
回答 2查看 967关注 0票数 1

我需要在大型进程执行后发送一封电子邮件,并将日志文件作为附件,以便用户可以识别任何问题。我们使用log4net来处理所有的日志记录,但我还没能让log4net释放该文件,以便将其作为附件添加。

到目前为止,我关注了这个问题的结果:How to stop log4net from logging and release the last file关于将附加器阈值设置为"Off",但由于DLL没有释放日志文件,我继续收到异常。我可以在调试器中验证附加器实际上处于“关闭”状态,但是进程资源管理器确认我的exe仍然持有对该文件的锁定。

下面是我从链接问题中得到的方法:

代码语言:javascript
复制
 private static void SetThreshold(string appenderName, log4net.Core.Level threshold)
        {
            foreach (log4net.Appender.AppenderSkeleton appender in log4net.LogManager.GetRepository().GetAppenders())
            {
                if (appender.Name == appenderName)
                {
                    appender.Threshold = threshold;
                    break;
                }
            }
        }

任何如何强制释放此日志的想法都将非常有帮助。谢谢

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56261659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档