boost:: log выглядит очень мощным. Он предлагает макрос BOOST_LOG_TRIVIAL для тривиального ведения журнала. Но как я могу изменить форматирование по умолчанию? Он печатает метку времени по умолчанию, я не хочу этого. Есть ли у вас какие-либо идеи? Кажется, единственный способ определить новый приемник ex-novo и добавить его в ядро, тогда вы можете вызвать set_format() на бэкэнд в случае. Но это уже не "тривиально".
Как изменить форматирование по умолчанию с помощью boost:: log:: BOOST_TRIVIAL_LOG?
Ответ 1
Boost.Log имеет приемник по умолчанию, который используется до тех пор, пока вы не предоставляете свой собственный приемник. Следующий фрагмент кода изменяет формат консольного журнала, добавляя новый приемник.
#include <boost/log/trivial.hpp>
#include <boost/log/utility/setup/console.hpp>
int main()
{
boost::log::add_console_log(std::cout, boost::log::keywords::format = ">> %Message%");
BOOST_LOG_TRIVIAL(info) << "Hello world!";
}
Обратите внимание, что вам нужно добавить библиотеку log_setup в свою сборку, т.е. сделать
-lboost_log_setup -lboost_log
где порядок libs важен.