spdlog是一个开源的日志库,可选择向控制台、文件、系统日志以及控制器等目标输出日志,并可设置日志输出级别,以及定义日志输出格式等。spdlog
安装使用很简单,把spdlog
的头文件放在了环境变量/user/local/include
中即可。
为了方便使用,对spdlog作了封装,单独写了一个头文件和类,并且用单例模式来进行调用,详细介绍如下:
功能
提供了3种不同的日志模式
- 控制台模式(
mode = 1
),打印结果输出到控制台 - 文件模式(
mode = 2
),打印结果输出到指定文件中 - 控制台+文件模式(
mode = 3
),打印结果输出到控制台和指定文件中
五种打印级别
ZLOG_TRACE();
ZLOG_DEBUG();
ZLOG_INFO();
ZLOG_WARN();
ZLOG_ERROR
示例代码:
#include "logging.h"
int main() {
ZLOG::getInstance("./log/", "test.log", 3);
int param = 1;
ZLOG_TRACE("this is trace log record, param: {}", ++param); // int type param is ok
ZLOG_DEBUG("this is debug log record, param: {}", ++param);
ZLOG_INFO("this is info log record, param: {}", ++param);
ZLOG_WARN("this is warn log record, param: {}", double(++param)); // double type param is ok
ZLOG_ERROR("this is error log record, param: {}", std::to_string(++param)); // string type param is ok
return 0;
}
编译运行:
g++ -g main.cpp -o main