[Boost.Log] Problem : Logs with channel and severity
Hello. It's my first post here... I'll try to be quick and sharp. i apologise if i fail. I spend a long time reading the Boost.Log documentation, but I'm lost. I try to generate logs with this Format : [ProcessId][ThreadId[TimeStamp][Channel][Severity] Text For now i succeeded this Format : [ProcessId][ThreadId[TimeStamp][][] Text Here's what i did. Header : ------------------------- class Trace { public : enum SeverityLevels {...}; enum Channels{...}; typedef boost::log::sources::severity_channel_logger_mt< SeverityLevels, // the type of the severity level Channels // the type of the channel name > MyLogger; // logger type public : static MyLogger m_channel1; // one channel <-> one logger static MyLogger m_channel2; // one channel <-> one logger ... public : static void init(); // initialisation }; ------------------------- Source : ------------------------- void Trace::init() { boost::log::add_common_attributes(); init_log_to_file ( ... boost::log::keywords::format = "[%ProcessID%][%ThreadID%][%TimeStamp%][%Channel%][%Severity%]: %_%" ); } ------------------------- And i somewhere implemented a #define that make this compilable : ------------------------- TRACE(channel_networking,debug) << "Logs enabled" << 4; ------------------------- The problematic code is that one, that i try to add in my init() function : ------------------------- boost::shared_ptr< boost::log::sinks::synchronous_sink< boost::log::sinks::basic_text_file_backend< char > > > pBackend; pBackend = boost::log::init_log_to_file(...); pBackend->locked_backend()->set_formatter(boost::log::formatters::stream << boost::log::formatters::attr< Channels >("Channel")); ------------------------- I try here to add a formater to the backend part of the sink i just created with init_log_to_file(...) And i somewhere defined this operator : ------------------------- std::ostream& operator<< (std::ostream& strm, Trace::Channels const& val) ------------------------- The result is : - compilation is OK - linking is OK - running is OK (no exception throwed) - but my log file is empty. Thanks x 1 to every reader of this message. Thanks x 2 to every answerer to this message Thanks x 4 to every helper
participants (1)
-
Aman Feri