spdlog 输出函数和行号
时间: 2024-05-26 16:10:09 浏览: 11
可以使用如下代码实现:
spdlog::set_pattern("[%Y-%m-%d %H:%M:%S.%e] [%^%l%$] [thread %t] %v @ %s:%#");
其中 %s 表示源文件名,%# 表示行号。这样,在使用 spdlog 输出日志时,就会在日志内容中显示出调用该日志输出函数的源文件名和行号。
相关问题
spdlog设置 输出函数和行号
可以使用 spdlog::set_pattern("[%Y-%m-%d %H:%M:%S.%e] [%^%L%$] [%n] %v at %s:%#"); 来设置日志输出格式,并且可以使用 spdlog::set_logger_raw_ptr(logger.get()); 来设置输出到控制台或文件的函数。
日志打印函数和行号
好的,您想了解日志打印函数和行号的相关内容。日志打印函数是指在程序运行时,为了方便开发人员调试程序,将程序运行过程中的重要信息输出到日志文件中或者控制台上的函数。一般而言,日志打印函数需要包含以下参数:
- 日志等级:表示该条日志的重要程度,例如 DEBUG、INFO、WARN、ERROR、FATAL 等;
- 日志信息:表示需要输出的日志信息,例如程序的运行状态、错误信息等;
- 文件名:表示该条日志所在的源文件名;
- 行号:表示该条日志所在的源文件的行号。
行号是日志打印函数中非常重要的一个参数,因为它可以帮助开发人员快速定位到程序出错的位置。一般而言,在日志打印函数中获取行号的方式为使用预处理器定义的 __LINE__ 宏,例如:
```
#define LOG_INFO(msg) do { \
fprintf(stdout, "[INFO] %s:%d %s\n", __FILE__, __LINE__, msg); \
} while (0)
```
在上述代码中,我们使用了 __LINE__ 宏来获取当前日志所在的行号,并将其输出到控制台中。这样,在程序运行时,我们就可以轻松地定位到某一条日志所在的位置,方便调试程序。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)