每个日志记录器的 sink 都有一个格式化器,用于将消息格式化为目标格式。
spdlog 的默认日志格式如下:
[2014-10-31 23:46:59.678] [my_loggername] [info] Some message
有两种方式可以自定义日志记录器的格式:
1. 设置格式模式字符串(推荐):
set_pattern(pattern_string);
2. 或者实现自定义的格式化器,该格式化器实现了格式化器接口,并调用:
set_formatter(std::make_unique<my_custom_formatter>());
通过 set_pattern(..) 自定义格式
格式模式可以应用于所有已注册的日志记录器:
spdlog::set_pattern("*** [%H:%M:%S %z] [thread %t] %v ***");
也可以应用于特定的日志记录器对象:
some_logger->set_pattern(">>>>>>>>> %H:%M:%S %z %v <<<<<<<<<");
或者应用于特定的 sink 对象:
some_logger->sinks()[0]->set_pattern(&#