c++ 如何格式化spdlog宏的输出?

hsgswve4  于 2023-06-25  发布在  其他
关注(0)|答案(2)|浏览(296)

如何格式化SPDLOG宏调用的输出以排除[main.cpp:9]部件?

  1. #include <spdlog/spdlog.h>
  2. int main()
  3. {
  4. SPDLOG_DEBUG("SMTH1");
  5. SPDLOG_TRACE("SMTH2");
  6. SPDLOG_INFO("SMTH3");
  7. }

默认输出:

  1. [2022-11-11 21:07:28.346] [temp] [debug] [main.cpp:9] SMTH1
  2. [2022-11-11 21:07:28.348] [trace] [debug] [main.cpp:10] SMTH2
  3. [2022-11-11 21:07:28.349] [info] [debug] [main.cpp:11] SMTH3

期望输出:

  1. [2022-11-11 21:07:28.346] [temp] [debug] SMTH1
  2. [2022-11-11 21:07:28.348] [trace] [debug] SMTH2
  3. [2022-11-11 21:07:28.349] [info] [debug] SMTH3
ljsrvy3e

ljsrvy3e1#

维基页面https://github.com/gabime/spdlog/wiki/3.-Custom-formatting

  1. spdlog::set_pattern("[%Y-%m-%d %H:%M:%S.%e] [%n] [%l] %v");

我们有一个日期模式,%n是记录器名称,%l是消息的日志级别,%v是消息。你可以通过查看wiki来做很多事情。

b1payxdu

b1payxdu2#

#define SPDLOG_ACTIVE_LEVEL SPDLOG_LEVEL_INFO在包含spdlog. h之前

相关问题