#include "spdlog/spdlog.h"
int main()
{
//Use the default logger (stdout, multi-threaded, colored)
spdlog::info("Hello, {}!", "World");
}
`spdlog` 是一个仅包含头文件的库。只需将文件复制到您的构建目录下,并使用 C++11 编译器即可。
它提供了类似于 Python 的格式化 API,使用捆绑的 fmt 库(请参阅参考文档):
logger->info("Hello {} {} !!", "param1", 123.4);
`spdlog` 采用了“包含所需内容”的方法 - 您的代码应该只包含实际需要的功能。
例如,如果您只需要旋转记录器,您需要包含 "spdlog/sinks/rotating_file_sink.h"。
另一个例子是包含 "spdlog/async.h" 以获取异步记录功能。
基本范例
int main(int, char* [])
{
try
{
// 创建基本文件记录器(不进行轮转)
auto my_logger = spdlog::basic_logger_mt("basic_logger", "logs/basic.txt");
// 创建一个文件轮转记录器,最大大小为5MB,最多保留3个轮转文件