log4cplus 是否支持 xml 配置文件和条件日志记录
Does log4cplus support xml configuration file and conditional logging?
我想使用 MDC 在我的程序中设置上下文,然后能够在配置文件中设置过滤器以仅在特定上下文中显示来自记录器的消息。
MDC mdc;
mdc.put("fieldName", "foo");
LOG4CPLUS_DEBUG(log, "ABC");
mdc.put("fieldName", "bar");
LOG4CPLUS_DEBUG(log, "XYZ");
我只想在"bar"
时从log
打印"fieldName"
,所以只有"XYZ"应该打印到我的日志中。
在 log4j 中,这可以使用带有过滤器的 XML 格式配置文件来完成。log4cplus 可以使用 XML 配置文件吗?是否可以在 XML 日志中设置这样的筛选器?
另外,有没有办法使 log4cplus 详细,这样我就可以查看它是否找到了我的配置文件,以及它是否能够读取它等。
我甚至找不到log4cplus XML配置文件的一个示例或如何读取一个示例。
Log4cplus 不支持任何类型的 XML 配置文件。这是因为它需要一个XML解析器,这是一个相当严重的依赖关系。
至于使用MDC的过滤,目前没有这样的过滤器。您必须实现自己的。请参阅Filter
类。
您可以使用 log4cplus.configDebug=1
从属性文件设置 log4cplus 调试。或者,您可以将LOG4CPLUS_LOGLOG_DEBUGENABLED
环境变量设置为 1
。前者优先于后者。
相关文章:
- 为什么"do while"循环不断退出,即使条件计算结果为 false?
- 在没有太多条件句的情况下,我如何避免被零除
- 基于多个条件处理地图中的所有元素
- 条件constexpr函数
- 无论条件是否为true,if总是在c++中执行
- 我可以使用条件运算符初始化C风格的字符串文字吗
- 基于模板值的条件变量
- EvtExportLogneneneba API正在将远程计算机的事件日志保存到远程PC本身.如何将其保存到主机
- 多个If语句与使用逻辑运算符计算条件的单个语句的比较
- 将按位if条件转换为普通if条件
- 条件断点在不应该触发时触发
- 为什么简单的算术减法在"if"条件下不起作用?
- 如何在for循环中包含两个索引值的测试条件
- 如果条件为TRUE(最佳方式?),则在do while循环中后置增量
- 我提出什么条件才能再加5%的折扣
- 为什么 printf 可以屏蔽竞争条件,而系统日志不能?
- 带有提升日志库的条件/偶尔日志记录
- C/C++日志记录功能,支持根据日志级别进行的条件函数调用
- C++的最小条件日志记录
- log4cplus 是否支持 xml 配置文件和条件日志记录