在下述代码中,我们使用 getLogger() 方法创建一个日志记录器,并将其级别设置为 logging.INFO。然后,我们创建一个 FileHandler 对象,并在创建时指定编码方式为 UTF-8。接下来,我们配置文件处理程序的格式,并将其添加到日志记录器中。最后,我们使用 logger.info() 方法写入一条中文日志。
这样,日志将被写入到名为file_name的文件中,并使用 UTF-8 编码。
要写入不同级别的日志(如错误、警告等),你可以使用不同级别的日志记录方法。logging 模块提供了以下几个常用的日志级别方法:
logger.debug(): 调试级别的日志记录方法,用于输出详细的调试信息。
logger.info(): 信息级别的日志记录方法,用于输出常规的信息。
logger.warning(): 警告级别的日志记录方法,用于输出警告信息。
logger.error(): 错误级别的日志记录方法,用于输出错误信息。
logger.critical(): 严重错误级别的日志记录方法,用于输出严重错误信息。
import datetime
import logging
# 获取当前时间
current_time = datetime.datetime.now()
# 格式化时间作为文件名
file_name ="./"+ current_time.strftime("%Y-%m-%d_%H-%M-%S") + ".log"
#file = open(file_name, 'a+')
# 创建日志记录器
logger = logging.getLogger()
#设置日志等级
logger.setLevel(logging.INFO)
file_handler = logging.FileHandler(file_name, encoding='utf-8')
# 配置文件处理程序的格式
formatter = logging.Formatter('[%(asctime)s][%(levelname)s][%(lineno)d]: %(message)s')
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
logging.info('这是第一行日志')
count=0
camera_timestamp=1693984385082431000
logging.info('帧号: %s',str(count))
logging.info('时间戳: %s',str(camera_timestamp))
# 写入不同级别的日志
logger.debug('这是一条调试信息')
logger.info('这是一条常规信息')
logger.warning('这是一条警告信息')
logger.error('这是一条错误信息')
logger.critical('这是一条严重错误信息')