-
Notifications
You must be signed in to change notification settings - Fork 2k
Expand file tree
/
Copy pathlog_system.cpp
More file actions
36 lines (28 loc) · 1.14 KB
/
log_system.cpp
File metadata and controls
36 lines (28 loc) · 1.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include "runtime/core/log/log_system.h"
#include <spdlog/async.h>
#include <spdlog/sinks/basic_file_sink.h>
#include <spdlog/sinks/stdout_color_sinks.h>
#include <spdlog/spdlog.h>
namespace Pilot
{
LogSystem::LogSystem()
{
auto console_sink = std::make_shared<spdlog::sinks::stdout_color_sink_mt>();
console_sink->set_level(spdlog::level::trace);
console_sink->set_pattern("[%^%l%$] %!@%s+%# %v");
const spdlog::sinks_init_list sink_list = {console_sink};
spdlog::init_thread_pool(8192, 1);
m_logger = std::make_shared<spdlog::async_logger>("muggle_logger",
sink_list.begin(),
sink_list.end(),
spdlog::thread_pool(),
spdlog::async_overflow_policy::block);
m_logger->set_level(spdlog::level::trace);
spdlog::register_logger(m_logger);
}
LogSystem::~LogSystem()
{
m_logger->flush();
spdlog::drop_all();
}
} // namespace Pilot