使用python logging输出程序的控制台信息和报错信息到一个文件中,并保存
时间: 2024-03-27 18:39:00 浏览: 76
要将程序的控制台信息和报错信息输出到一个文件中,并保存,可以将 FileHandler 的 mode 参数设置为 'a',表示以追加模式打开文件,并将日志信息写入文件中。
下面是一个示例代码:
```python
import logging
# 设置 logging 的配置
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
# 创建 FileHandler 对象,将日志输出到文件中
file_handler = logging.FileHandler('log.txt', mode='a') # 追加模式
file_handler.setLevel(logging.DEBUG)
file_handler.setFormatter(logging.Formatter('%(asctime)s - %(levelname)s - %(message)s'))
# 将 FileHandler 添加到 logging 配置中
logging.getLogger('').addHandler(file_handler)
# 输出不同级别的日志信息
logging.debug('这是一条 DEBUG 级别的信息')
logging.info('这是一条 INFO 级别的信息')
logging.warning('这是一条 WARNING 级别的信息')
logging.error('这是一条 ERROR 级别的信息')
logging.critical('这是一条 CRITICAL 级别的信息')
# 关闭 FileHandler,保存日志信息
file_handler.close()
```
在这个示例代码中,我们将 FileHandler 的 mode 参数设置为 'a',表示以追加模式打开文件,并将日志信息写入文件中。然后在程序结束时,调用 FileHandler 的 close 方法,将日志信息保存到文件中。
注意,在使用 logging 模块时,建议在程序结束时关闭 FileHandler,以确保所有日志信息都已保存。如果不关闭 FileHandler,可能会导致部分日志信息丢失。
阅读全文