23 #include <spdlog/sinks/null_sink.h> 32 std::shared_ptr<spdlog::logger> LogUtils::CreateCliLogger(
const string& logger_name,
const string& file_name)
34 set_async_mode(1048576);
35 auto lggr =
get(logger_name);
37 throw runtime_error(
"LogUtils::CreateCliLogger> Creating already registered logger" + logger_name);
40 vector<sink_ptr> sinks;
41 const auto color_sink = make_shared<ansicolor_stdout_sink_st>();
42 sinks.push_back(color_sink);
43 sinks.push_back(make_shared<simple_file_sink_st>(file_name));
44 lggr = make_shared<logger>(logger_name, begin(sinks), end(sinks));
45 }
catch (
const spdlog_ex& e) {
46 cerr <<
"LogUtils::CreateCliLogger> Logger initialization failed for " << logger_name
47 <<
" and file: " << file_name << endl;
53 std::shared_ptr<spdlog::logger> LogUtils::CreateFileLogger(
const string& logger_name,
const string& file_name)
55 set_async_mode(1048576);
56 auto lggr =
get(logger_name);
58 throw runtime_error(
"LogUtils::CreateFileLogger> Creating already registered logger" + logger_name);
61 const auto sink = make_shared<simple_file_sink_st>(file_name,
true);
62 lggr = make_shared<logger>(logger_name, sink);
63 }
catch (
const spdlog_ex& e) {
64 cerr <<
"LogUtils::CreateFileLogger> Logger initialization failed for " << logger_name
65 <<
" and file: " << file_name << endl;
71 std::shared_ptr<logger> LogUtils::CreateNullLogger(
const string& logger_name)
73 set_async_mode(1048576);
74 auto lggr =
get(logger_name);
76 throw runtime_error(
"LogUtils::CreateNullLogger> Creating already registered logger" + logger_name);
79 const auto null_sink = make_shared<null_sink_st>();
80 lggr = make_shared<logger>(logger_name, null_sink);
81 }
catch (
const spdlog_ex& e) {
82 cerr <<
"LogUtils::CreateNullLogger> Logger initialization failed for " << logger_name << endl;
88 std::shared_ptr<logger> LogUtils::CreateRotatingLogger(
const string& logger_name,
const string& file_name)
90 set_async_mode(1048576);
91 auto lggr =
get(logger_name);
93 throw runtime_error(
"LogUtils::CreateRotatingLogger> Creating already registered logger" + logger_name);
96 auto rot = make_shared<rotating_file_sink_mt>(file_name, numeric_limits<size_t>::max(),
97 numeric_limits<size_t>::max());
98 lggr = make_shared<logger>(logger_name, rot);
99 }
catch (
const spdlog_ex& e) {
100 cerr <<
"LogUtils::CreateRotatingLogger> Logger initialization failed for " << logger_name
101 <<
" and file: " << file_name << endl;
Logging (spdlog) utilities.
Namespace for the simulator and related classes.