Aktualizr
C++ SOTA Client
All Classes Namespaces Files Functions Variables Enumerations Enumerator Pages
logging.cc
1 #include "logging.h"
2 
3 using boost::log::trivial::severity_level;
4 
5 static severity_level gLoggingThreshold;
6 
7 extern void logger_init_sink(bool use_colors = false);
8 
9 int64_t get_curlopt_verbose() { return gLoggingThreshold <= boost::log::trivial::trace ? 1L : 0L; }
10 
11 void logger_init(bool use_colors) {
12  gLoggingThreshold = boost::log::trivial::info;
13 
14  logger_init_sink(use_colors);
15 
16  boost::log::core::get()->set_filter(boost::log::trivial::severity >= gLoggingThreshold);
17 }
18 
19 void logger_set_threshold(const severity_level threshold) {
20  gLoggingThreshold = threshold;
21  boost::log::core::get()->set_filter(boost::log::trivial::severity >= gLoggingThreshold);
22 }
23 
24 void logger_set_threshold(const LoggerConfig& lconfig) {
25  int loglevel = lconfig.loglevel;
26  if (loglevel < boost::log::trivial::trace) {
27  LOG_WARNING << "Invalid log level: " << loglevel;
28  loglevel = boost::log::trivial::trace;
29  }
30  if (boost::log::trivial::fatal < loglevel) {
31  LOG_WARNING << "Invalid log level: " << loglevel;
32  loglevel = boost::log::trivial::fatal;
33  }
34  logger_set_threshold(static_cast<boost::log::trivial::severity_level>(loglevel));
35 }
36 
37 void logger_set_enable(bool enabled) { boost::log::core::get()->set_logging_enabled(enabled); }
38 
39 int loggerGetSeverity() { return static_cast<int>(gLoggingThreshold); }
40 
41 // vim: set tabstop=2 shiftwidth=2 expandtab:
LoggerConfig
Definition: logging_config.h:7