的互動我有一個很好的格式和控制檯日誌:升壓日誌:日誌設置文件和代碼配置
auto fmtStream = expressions::stream
<< "LineID: " << expressions::attr<unsigned int>("LineID") << " "
<< "Message: " << expressions::message:
boost::log::add_console_log(std::cout, keywords::format = fmtStream);
格式流當然是稍微更長.. 現在我想給用戶配置日誌:
std::ifstream file("log.conf");
init_from_stream(file);
很多fmtStream格式化使用的是無法使用的配置文件中的格式字符串。
我該如何給用戶修改控制檯接收器的可能性,例如:添加一個過濾器?但我想保留格式字符串作爲默認值。
可能性我看看它:
1)給我在我的代碼名稱定義控制檯日誌。用戶現在可以使用同名的接收器對其進行修改。
2)設置所有接收器的默認格式。但根據Boost Log changing the default logging::core formatter?這是不可能的。
3)有沒有其他想法?
謝謝!