train.py文件详解(1)----------- 日志初始化
1、源码:
# 日志初始化
set_logging(RANK)
def set_logging(rank=-1, verbose=True):
logging.basicConfig(
format="%(message)s",
level=logging.INFO if (verbose and rank in [-1, 0]) else logging.WARN)
# rank 系统进程
# format="%(message)s", 格式为仅输出具体内容
# level = logging.INFO
# if verbose and rank in [-1, 0]:
# level = logging.INFO
# else:
# level = logging.WARN
# logging.basicConfig()的参数:
# level: 输出日志的等级,debug < info < warning < critical < error
# format: 输出格式
# datemat: 时间信息
# filename: 日志信息输出到的日志文件名
# filemode: 决定使用什么模式来打开日志文件('r'、'w'、'a'),默认为'a'
二、logging.basicConfig()函数
输入:
import logging
'''format=%(asctime)s具体时间 %(filename)s文件名 %(lenvelname)s日志等级 %(message)s具体信息
datemt=%a星期 %d日期 %b月份 %Y年份 %H:%M:%S时间'''
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s %(levelname)s %(message)s',
datefmt='%a %d %b %Y %H:%M:%S', filename='my.log', filemode='w')
logging.warning('这是warning等级')
logging.info('这是info等级')
logging.debug('这是debug等级')
logging.error('这是error等级')
logging.critical('这是critical等级')
输出:
Wed 15 Sep 2021 09:53:37 BN.py WARNING 这是warning等级
# 日期 文件名 输入等级 具体内容
# 日期格式:星期几 几号 几月 年份 具体时间
Wed 15 Sep 2021 09:53:37 BN.py INFO 这是info等级
Wed 15 Sep 2021 09:53:37 BN.py DEBUG 这是debug等级
Wed 15 Sep 2021 09:53:37 BN.py ERROR 这是error等级
Wed 15 Sep 2021 09:53:37 BN.py CRITICAL 这是critical等级
三 log的好处
ogging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等