logging 模块提供了一个灵活的框架,用于从python程序中发送日志消息
DEBUG: 详细信息,通常只在诊断问题时使用。INFO: 确认程序按预期运行。WARNING: 表示有潜在的问题。ERROR: 表示一个更严重的问题,程序可能无法执行某些功能。CRITICAL: 表示一个非常严重的错误,程序可能无法继续运行。- import logging
-
-
- def test_logging():
- logging.debug('Python debug')
- logging.info('Python info')
- logging.warning('Python warning')
- logging.error('Python Error')
- logging.critical('Python critical')
-
- test_logging()
- '''
- WARNING:root:Python warning
- ERROR:root:Python Error
- CRITICAL:root:Python critical
- '''
- import logging
-
- logging.basicConfig(level=logging.DEBUG)
-
- def test_logging():
-
- logging.debug('Python debug')
- logging.info('Python info')
- logging.warning('Python warning')
- logging.error('Python Error')
- logging.critical('Python critical')
-
- test_logging()
- '''
- DEBUG:root:Python debug
- INFO:root:Python info
- WARNING:root:Python warning
- ERROR:root:Python Error
- CRITICAL:root:Python critical
- '''
- import logging
-
- logging.basicConfig(filename='log.txt',level=logging.DEBUG)
-
- def test_logging():
-
- logging.debug('Python debug')
- logging.info('Python info')
- logging.warning('Python warning')
- logging.error('Python Error')
- logging.critical('Python critical')
-
- test_logging()
相应的位置就会有一个log.txt文件,里面是logging的内容
- import logging
-
- logging.basicConfig(format='%(asctime)s %(message)s')
-
- def test_logging():
-
- logging.debug('Python debug')
- logging.info('Python info')
- logging.warning('Python warning')
- logging.error('Python Error')
- logging.critical('Python critical')
-
- test_logging()
- '''
- 2023-10-27 10:48:18,817 Python warning
- 2023-10-27 10:48:18,819 Python Error
- 2023-10-27 10:48:18,819 Python critical
- '''
| %(name)s | Logger 的名字 |
| %(levelno)s | 数字形式的日志级别 |
| %(levelname)s | 文本形式的日志级别 |
| %(pathname)s: | 调用日志函数的源文件的完整路径名 |
| %(filename)s | 调用日志函数的源文件的文件名 |
| %(module)s | 调用日志函数的模块名 |
| %(funcName)s | 调用日志函数的函数名 |
| %(lineno)d | 调用日志函数的源文件的行号 |
| %(created)f | 日志事件的时间,表示为从纪元开始的秒数 |
| %(asctime)s | 人类可读的时间格式 |
| %(msecs)d | 日志事件的毫秒部分 |
| %(relativeCreated)d | 日志事件的时间,表示为从日志记录模块加载以来的毫秒数 |
| %(thread)d | 线程 ID |
| %(threadName)s | 线程名 |
| %(process)d | 进程 ID |
| %(message)s | 用户输出的消息 |
- import logging
-
- logging.basicConfig(format='''%(name)s \n
- %(levelno)s \n
- %(levelname)s \n
- %(pathname)s \n
- %(filename)s: \n
- %(module)s: \n
- %(funcName)s \n
- %(lineno)d \n
- %(created)f: \n
- %(asctime)s \n
- %(msecs)d \n
- %(relativeCreated)d \n
- %(thread)d \n
- %(threadName)s \n
- %(process)d \n
- %(message)s''',
- level=logging.CRITICAL)
-
- def test_logging():
-
- logging.debug('Python debug')
- logging.info('Python info')
- logging.warning('Python warning')
- logging.error('Python Error')
- logging.critical('Python critical')
-
- test_logging()
- '''
- root
-
- 50
-
- CRITICAL
- C:\Users\16000\AppData\Local\Temp\ipykernel_17092\420147071.py
- 420147071.py:
- 420147071:
- test_logging
- 27
- 1698375176.601358:
- 2023-10-27 10:52:56,601
- 601
- 1961
- 2776
- MainThread
- 17092
- Python critical
- '''