我一直在研究Boost.Log一段时间,我相信现在是我将代码库从log4cxx转换为Boost.Log的时候了.我相信Boost.Log的设计和实现将显着改善我的代码维护和使用.我知道Boost.Log FAQ有一个页面说
对于分层记录器,当前库设计中不需要此功能.它在log4j中提供的主要好处之一是确定日志记录最终的appender(接收器,就此库而言).该库通过过滤实现相同的结果.
我理解概念等价而不是试图将Boost.Log变成log4j/log4cxx.相反,我的问题是:如何使用Boost.Log来获得与我目前在log4cxx中使用的功能相同的功能?特别是,我想为日志源或通道层次结构中的特定节点设置严重性阈值和接收器.例如,我有按日期组织的日志源,libA.moduleB.componentC.logD其中层次结构中的级别由点分隔..使用log4cxx,可以使用libA更具体的记录器设置INFO 的总阈值,libA.moduleB阈值为DEBUG.
libA.threshold=INFO
libA.moduleB.threshold=DEBUG
Run Code Online (Sandbox Code Playgroud)
类似地,可以将接收器附加到层次结构中的任意节点.
我相信使用Boost.Log可以实现类似的功能,但我需要有关如何实际实现此功能的帮助/指导.另外,我确信其他想要从其他框架过渡到Boost.Log的人会有同样的问题.
我真诚地感谢您的评论.