我试图弄清楚如何与BOOST_LOG_SEV结合使用简单的过滤器。
例如,如果我设置了这样的东西:
enum class SeverityLevel {
Foo,
Bar
};
boost::log::sources::severity_logger_mt<SeverityLevel> slg;
BOOST_LOG_SEV(slg, SeverityLevel::Foo) << "Foo log record";
BOOST_LOG_SEV(slg, SeverityLevel::Bar) << "Bar log record";
我希望能够添加以下内容:
slg.set_minimum_severity(SeverityLevel::Bar); // Filter out Foo logs
Boost.Log文档可以快速从过滤琐碎日志到更复杂的案例。
答案 0 :(得分:1)
首先,您可能想要了解有关阅读升级日志文档的一个小秘密,即代码示例比文档页面上的摘要要完整得多。如果我理解你,你应该对
中的例子感到满意http://www.boost.org/doc/libs/1_54_0/libs/log/example/doc/tutorial_filtering.cpp
查找set_filter行,并将其修改为:
sink->set_filter(severity >= SeverityLevel::Bar);
对于更高级的过滤器,我刚刚提出了有关提升用户邮件列表的相关问题: