EasyLogger如何设置配置 不显示pid 显示行号
时间: 2024-09-09 19:09:01 浏览: 57
EasyLogger是一个轻量级的C++日志库,它允许用户自定义日志的行为。如果你想要在EasyLogger的日志中隐藏PID(进程ID)并显示行号,可以按照以下步骤设置:
1. 首先,你需要包含EasyLogger的头文件,并初始化一个Logger实例。通常在应用程序启动的地方做这个设置。
```cpp
#include "easylogging++.h"
using namespace el::Loggers;
// 初始化Logger
LogInit logInit;
```
2. 然后,在创建日志记录格式时,你可以指定只输出行号而不包括PID。通过`el::Configurations`和`el::StreamHandler`来定制输出格式。例如:
```cpp
// 创建一个配置
auto config = std::make_shared<el::Configurations>();
config->set(el::ConfigurationType::Stream, // 设置流类型
el::Level::Info, // 日志级别
"%datetime [%thread] %-5level %logger <%-60message> %n"); // 自定义输出格式
// 行号从1开始
config->set(el::ConfigurationType::LineNumberStart, "1");
// 不显示PID
config->set(el::ConfigurationType::HidePid, true);
// 添加到默认输出处理器
DefaultFormatter fmt(config);
FileHandler fh("app.log", config); // 或者其他你想保存日志的文件名
fh.format(std::ref(fmt));
// 注册处理程序
Loggers::Root() << GeneralLogger_mt << fh;
```
在这个例子中,`"%n"`会输出当前行号,而`%hid_pid`会被忽略,因为已经设置了`HidePid`为true。
阅读全文