c# - 在 .net windows 应用程序中使用 log4net

标签 c# logging log4net

我们使用 log4Net 将消息从 .Net 3.5 Windows 应用程序记录到文件和数据库中。

winforms 应用程序已部署到生产环境并已启动并运行。 部署前,level节点属性值设置为“ALL”。

<level value="ALL"/>

当应用程序运行时,我需要将级别更改为“错误”并保存 xml。然后,log4net 应该仅在日志中记录“错误”类型消息。 我如何使用 log4net 实现这一目标? 如果不可行,还有其他方法吗?

谢谢。

最佳答案

默认情况下,如果将 log4net 配置保存在单独的文件中(而不是在 app.config 文件中),则可以更新该文件,并且由于 log4net 中的 XmlConfigurator,应用程序将立即更改其记录信息的级别。

如果您想在应用程序内动态更新日志记录级别,借助 .Net 3.5+ 的 LINQ to XML 功能,有一种简单的方法可以实现这一点。我写了一篇博客文章概述了如何做到这一点here .

关于c# - 在 .net windows 应用程序中使用 log4net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5718788/

相关文章:

c# - Gridview 数据源中的行数

log4net - 扩展 log4net - 向每个日志添加额外的数据

c# - log4net(common.logging)错误异常

c# - 无法创建组件 'reportviewer'。错误消息遵循 'system.runtime.interopservices.comexception' vs 2015

c# - 为什么我看不到来自外部库的 xml 注释?

java - 禁用 logger.debug 会影响性能吗?

linux - bash,如何将记录器脚本转换为函数

.net - 检查 log4net XmlConfigurator 是否成功

c# - System.Linq 和 System.Data.Linq 有什么区别?

windows - 如何将 Windows cmd 输出重定向到文本文件?