3

FLAGS_stderrthresholdブースト ライブラリのフラグよりも深刻なレベルのみを出力するようなものがあるかどうか疑問に思っていました。たとえば、以下のコードはすべてをコンソールに出力します。警告、エラー、致命的なものだけを出力するようにレベルを設定できますか?

#include <boost/log/core.hpp>
#include <boost/log/trivial.hpp>
int main() {
    using namespace  boost::log::trivial;
    boost::log::sources::severity_logger< severity_level > lg;
    BOOST_LOG_SEV(lg, trace) << "A trace severity message";
    BOOST_LOG_SEV(lg, debug) << "A debug severity message";
    BOOST_LOG_SEV(lg, info) << "An informational severity message";
    BOOST_LOG_SEV(lg, warning) << "A warning severity message";
    BOOST_LOG_SEV(lg, error) << "An error severity message";
    BOOST_LOG_SEV(lg, fatal) << "A fatal severity message";
    return 0
}

実際の出力:

[2014-03-13 22:21:55.734957] [0xc00001d6] [trace]   A trace severity message
[2014-03-13 22:21:55.735957] [0xc00001d6] [debug]   A debug severity message
[2014-03-13 22:21:55.735957] [0xc00001d6] [info]    An informational severity message
[2014-03-13 22:21:55.735957] [0xc00001d6] [warning] A warning severity message
[2014-03-13 22:21:55.735957] [0xc00001d6] [error]   An error severity message
[2014-03-13 22:21:55.735957] [0xc00001d6] [fatal]   A fatal severity message
Press any key to continue . . .

欲望の出力:

[2014-03-13 22:21:55.735957] [0xc00001d6] [warning] A warning severity message
[2014-03-13 22:21:55.735957] [0xc00001d6] [error]   An error severity message
[2014-03-13 22:21:55.735957] [0xc00001d6] [fatal]   A fatal severity message
4

1 に答える 1