怎么在logging fomatter 中报错显示调用的函数的行数
时间: 2023-11-22 13:52:42 浏览: 34
可以在logging formatter中使用`%(funcName)s`和`%(lineno)d`占位符来显示调用函数的名称和行数。例如:
```python
import logging
logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger(__name__)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(funcName)s:%(lineno)d - %(message)s')
stream_handler = logging.StreamHandler()
stream_handler.setFormatter(formatter)
logger.addHandler(stream_handler)
def my_function():
logger.debug('This is a debug message')
my_function()
```
上述代码中,我们定义了一个自定义的日志格式化器,在其中使用了`%(funcName)s`和`%(lineno)d`占位符来显示调用函数的名称和行数。运行上述代码,输出的日志信息如下:
```
2022-09-28 14:30:31,968 - __main__ - DEBUG - my_function:15 - This is a debug message
```
其中,`my_function`表示调用该日志记录的函数名称,`15`表示该日志记录所在的行数。