настройка boost :: logging с приемником в файл, а также печать на стандартный вывод - PullRequest
0 голосов
/ 18 сентября 2018

Я бы хотел, чтобы boost:logger был настроен так, чтобы он записывал в файл, но также отображал тот же вывод на stdout.В настоящее время запись в файл, кажется, работает, но я ничего не получаю в stdout, и мне интересно, почему, вот что у меня есть, где logging::add_console_log внизу должно удовлетворять выводу до stdout, но не:

file_name = "/tmp/sample_%N.log";

   if (!file_name.empty()) { // add file log

        if (size_based_rotation) {
           logging::add_file_log(
               keywords::auto_flush = true,
                keywords::file_name = file_name,
                keywords::format = message_format,
                keywords::filter = min_severity || severity >= log_level,
                keywords::rotation_size = pt.get<uint>("rotation_size", 0));
    std::cout << "|       rotation_size: " << pt.get<uint>("rotation_size", 0) << std::endl;
        } else if (time_based_rotation) {
            logging::add_file_log(
                keywords::auto_flush = true,
                keywords::file_name = file_name,
                keywords::format = message_format,
                keywords::filter = min_severity || severity >= log_level,
                keywords::time_based_rotation = sinks::file::rotation_at_time_point(
                    pt.get<uint>("rotation_time.hour", 0),
                    pt.get<uint>("rotation_time.minute", 0),
                    pt.get<uint>("rotation_time.second", 0)));
        } else {
            logging::add_file_log(
                keywords::auto_flush = true,
                keywords::format = message_format,
                keywords::filter = min_severity || severity >= log_level,
                keywords::file_name = file_name);
        }
    } 
    logging::add_console_log(std::cout, boost::log::keywords::format = ">> %Message%");
    //YG logging::core::get()->set_filter(min_severity || severity >= log_level);
    //YG logging::core::get()->set_filter(severity >= log_level);
    logging::add_common_attributes();
...