X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=common%2Flog%2Flog.cpp;h=802eb93492de3440298253e8a89100e49aa7fd4c;hb=a75b4ede98fc2caa969f549ef72e98d078e56ba4;hp=ebb25cbb483d88e7b446f418bbd773825b2ed279;hpb=acfc5e815529d35adca06c5fd2a1a657d2cb9dea;p=casparcg diff --git a/common/log/log.cpp b/common/log/log.cpp index ebb25cbb4..802eb9349 100644 --- a/common/log/log.cpp +++ b/common/log/log.cpp @@ -17,6 +17,9 @@ * along with CasparCG. If not, see . * */ +// TODO: Colors in console. +// TODO: Think through filters. + #include "../stdafx.h" #if defined(_MSC_VER) @@ -36,6 +39,7 @@ #include #include #include +#include #include @@ -106,6 +110,12 @@ void init() auto stream_sink = boost::make_shared(stream_backend); +#ifdef NDEBUG + stream_sink->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= trace); +#else + stream_sink->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= trace); +#endif + stream_sink->locked_backend()->set_formatter(&my_formatter); boost::log::wcore::get()->add_sink(stream_sink); @@ -134,9 +144,9 @@ void add_file_sink(const std::wstring& folder) file_sink->locked_backend()->set_formatter(&my_formatter); #ifdef NDEBUG - file_sink->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= info); + file_sink->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= trace); #else - file_sink->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= debug); + file_sink->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= trace); #endif boost::log::wcore::get()->add_sink(file_sink); @@ -148,4 +158,20 @@ void add_file_sink(const std::wstring& folder) } } +void set_log_level(const std::wstring& lvl) +{ + if(boost::iequals(lvl, L"trace")) + boost::log::wcore::get()->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= trace); + else if(boost::iequals(lvl, L"debug")) + boost::log::wcore::get()->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= debug); + else if(boost::iequals(lvl, L"info")) + boost::log::wcore::get()->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= info); + else if(boost::iequals(lvl, L"warning")) + boost::log::wcore::get()->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= warning); + else if(boost::iequals(lvl, L"error")) + boost::log::wcore::get()->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= error); + else if(boost::iequals(lvl, L"fatal")) + boost::log::wcore::get()->set_filter(boost::log::filters::attr(boost::log::sources::aux::severity_attribute_name::get()) >= fatal); +} + }} \ No newline at end of file