一个开源的、快速的、仅有头文件的C++11 日志库
github链接: https://github.com/gabime/spdlog
安装
git clone https://github.com/gabime/spdlog.git
cd spdlog && mkdir build && cd build
cmake … && make -j
设置输出
1. 输出级别:info、debug、warn、error、critical
2. 设置输出级别: spdlog::set_level(spdlog::level::debug);
3. 设置输出格式:spdlog::set_pattern("[%H:%M:%S %z] [%n] [%^---%L---%$] [thread %t] %v");
4. 设置输出到文件:
auto file_logger = spdlog::basic_logger_mt("basic_logger", "logs/basic.txt");
spdlog::set_default_logger(file_logger);
5. 格式化输出
#include "spdlog/spdlog.h"
spdlog::info("Hello, World!");
spdlog::info("Hello, {}!", "World");
spdlog::info("Positional args are {1} {0}..", "too", "supported");
spdlog::info("Support for floats {:03.2f}", 1.23456);
spdlog::warn("Easy padding in numbers like {:08d}", 12);
spdlog::critical("Support for int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}", 42);
spdlog::info("{:<30}", "left aligned");