16

並行アプリケーションで単純なログ ファイルが必要です。私はBoost.Logv2.0をダウンロードし、それを使用してコンパイルしましたBoost 1.53.0.

問題は、Boost.Logコンソールでの出力です。を使用してBOOST_LOG_TRIVIAL(trace)います。

ファイルにリダイレクトする良い方法はありBOOST_LOG_TRIVIALますか?

4

1 に答える 1

26

ファイルを使用することができBOOST_LOG_TRIVIALます。以下に示すように、ほとんどのboost::log例ではネームスペース エイリアスを使用していることに注意してください。

#include <boost/log/core.hpp>
#include <boost/log/trivial.hpp>
#include <boost/log/expressions.hpp>
#include <boost/log/utility/setup/file.hpp>

namespace logging = boost::log;

void init()
{
    logging::add_file_log("sample.log");

    logging::core::get()->set_filter
    (
        logging::trivial::severity >= logging::trivial::info
    );
}

そして主に:

int main(int, char*[])
{
    init();

    BOOST_LOG_TRIVIAL(trace) << "A trace severity message";
 // other types of severity
    BOOST_LOG_TRIVIAL(fatal) << "A fatal severity message";

    return 0;
}
于 2013-04-19T10:09:03.050 に答える