Python Logging 是一个内置的 logging 模块,它允许你记录应用程序的调试信息,以便于在开发和部署过程中进行故障排除。
日志等级
等级 | 数值 | 说明 |
---|---|---|
logging.CRITICAL | 50 | 严重错误,表明软件已不能继续运行了。 |
logging.ERROR | 40 | 错误信息,由于更严重的问题,软件已不能执行一些功能了。 |
logging.WARNING | 30 | 默认等级,某些没有预料到的事件的提示,或者在将来可能会出现的问题提示。例如:磁盘空间不足。但是软件还是会照常运行。 |
logging.INFO | 20 | 预期信息 |
logging.DEBUG | 10 | 调试信息 |
logging.NOTSET | 0 | 不设置 |
日志级别: debug < info < warning < error < critical
他们都有对应的函数输出到控制台或文件。
打印对应级别的日志:
import logging
logging.basicConfig(level=logging.DEBUG)
logging.debug('This is a debug message')
logging.info('This is an info message')
logging.warning('This is a warning message')
logging.error('This is an error message')
logging.critical('This is a critical message')
使用 basicConfig 方法来配置 logging,设置日志级别为 DEBUG。
配置日志格式、输出到文件
logging.basicConfig(level=logging.DEBUG, # 控制台打印的日志级别
filename='202308.log',
filemode='a', # 模式,有w和a,w就是写模式,每次都会重新写日志,覆盖之前的日志
# a是追加模式,默认如果不写的话,就是追加模式
format='%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s'
# 日志格式
2023-08-04 18:42:40,063 - D:\test1.py[line:12] - DEBUG: This is a debug message
2023-08-04 18:42:40,064 - D:\test1.py[line:13] - INFO: This is an info message
2023-08-04 18:42:40,064 - D:\test1.py[line:14] - WARNING: This is a warning message
2023-08-04 18:42:40,064 - D:\test1.py[line:15] - ERROR: This is an error message
2023-08-04 18:42:40,064 - D:\test1.py[line:16] - CRITICAL: This is a critical message
参考
https://docs.python.org/3/library/logging.html#logrecord-attributes