在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
前言logging模块是Python内置的标准模块,主要用于输出脚本运行日志,可以设置输出日志的等级、日志保存路径等。
一、日志级别级别排序:CRITICAL > ERROR > WARNING > INFO > DEBUG
import logging # 引入logging模块 # 将信息打印到控制台上 logging.debug("debug") logging.info("info") logging.warning("warning") logging.error("error") logging.critical("critical") [root@zijie ~]# python log.py WARNING:root:warning ERROR:root:error CRITICAL:root:critical 默认生成的root logger的level是logging.WARNING,低于该级别不输出,如果要展示低于WARNING级别的内容,可以引入logging.basicConfig指定日志级别logging.basicConfig(level=logging.DEBUG) 二、basicConfig
import logging logging.basicConfig(level=logging.INFO, format='%(asctime)s %(filename)s %(levelname)s %(message)s', datefmt='%a %d %b %Y %H:%M:%S', filename='xuehui.log', filemode='w') logging.info('This is a info.') logging.debug('This is a debug message.') logging.warning('This is a warning.') 三、日志写文件import logging import os.path import time #创建logger logger = logging.getLogger() logger.setLevel(logging.DEBUG) # 创建handler,用于写入日志文件 logdate = time.strftime('%Y%m%d%H%M%S', time.localtime(time.time())) log_path = 'logs/' log_name = log_path + logdate + '.log' logfile = log_name fh = logging.FileHandler(logfile, mode='w') fh.setLevel(logging.DEBUG) # 定义输出格式 formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s") fh.setFormatter(formatter) # 将logger添加到handler logger.addHandler(fh) # 日志 logger.debug('this is a logger debug message') logger.info('this is a logger info message') logger.warning('this is a logger warning message') logger.error('this is a logger error message') logger.critical('this is a logger critical message') 四、traceback记录import logging import os.path import time #创建logger logger = logging.getLogger() logger.setLevel(logging.DEBUG) # 创建handler,用于写入日志文件 logdate = time.strftime('%Y%m%d%H%M%S', time.localtime(time.time())) log_path = 'logs/' log_name = log_path + logdate + '.log' logfile = log_name fh = logging.FileHandler(logfile, mode='w') fh.setLevel(logging.DEBUG) # 定义输出格式 formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s") fh.setFormatter(formatter) # 将logger添加到handler logger.addHandler(fh) # 日志 try: open('/data/exist', 'rb') except BaseException as e: logger.error('Failed to open file', exc_info=True) 到此这篇关于Python基础之logging模块知识总结的文章就介绍到这了,更多相关Python logging模块内容请搜索极客世界以前的文章或继续浏览下面的相关文章希望大家以后多多支持极客世界! |
2022-05-27
2022-05-27
2022-05-27
2022-05-27
2022-05-27
请发表评论