【问题标题】:How to redirect Boost.Log to file如何将 Boost.Log 重定向到文件
【发布时间】:2013-04-12 16:47:41
【问题描述】:

我想要一个并发应用程序中的简单日志文件。我下载了Boost.Log v2.0 并使用Boost 1.53.0 编译它。

问题是Boost.Log 在控制台上输出。我正在使用BOOST_LOG_TRIVIAL(trace)

有没有很好的方法将BOOST_LOG_TRIVIAL 重定向到文件?

【问题讨论】:

    标签: c++ logging boost-log


    【解决方案1】:

    您可以让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;
    }
    

    【讨论】:

    • 我要为 logging::add_file_log("sample.log") 包含什么标头?
    • @elvis.dukaj: #include &lt;boost/log/utility/setup/file.hpp&gt;
    猜你喜欢
    • 2014-09-30
    • 1970-01-01
    • 2014-12-06
    • 2015-03-10
    • 1970-01-01
    • 2023-03-03
    • 2023-03-06
    • 2019-01-05
    • 2017-03-26
    相关资源
    最近更新 更多