
需求:控制台输出简单的执行记录,文件输出详情的执行记录。
Python执行时需要看到执行过程。有些信息太长了直接输出不合适,但又要有记录,可以对不同的输出方式,按照不同的日志等级进行输出。
代码# 日志记录
import logging
# logging.basicConfig(level = logging.DEBUG,format = '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
logger = logging.getLogger("vnc")
logger.setLevel(logging.DEBUG) # 最低日志等级
log_format = logging.Formatter('%(asctime)s|%(name)s|%(levelname)-8s|%(message)s')
# 输出到文件
log_file = logging.FileHandler("get_video.log")
log_file.setLevel(logging.DEBUG)
log_file.setFormatter(log_format)
logger.addHandler(log_file)
# 直接输出显示
log_stream = logging.StreamHandler()
log_stream.setLevel(logging.INFO)
log_stream.setFormatter(log_format)
logger.addHandler(log_stream)
# 测试
logger.debug('Python debug')
logger.info('Python info')
logger.warning('Python warning')
logger.error('Python Error')
logger.critical('Python critical')
输出
2022-08-05 19:31:14,486|vnc|INFO |Python info 2022-08-05 19:31:14,486|vnc|WARNING |Python warning 2022-08-05 19:31:14,486|vnc|ERROR |Python Error 2022-08-05 19:31:14,486|vnc|CRITICAL|Python critical
2022-08-05 19:31:14,484|vnc|DEBUG |Python debug 2022-08-05 19:31:14,486|vnc|INFO |Python info 2022-08-05 19:31:14,486|vnc|WARNING |Python warning 2022-08-05 19:31:14,486|vnc|ERROR |Python Error 2022-08-05 19:31:14,486|vnc|CRITICAL|Python critical后记