2025年3月9日 星期日 甲辰(龙)年 月初八 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Python

Python中logging的简单用法,给自己搭建的项目或者工程添加日志logger

时间:10-23来源:作者:点击数:42

一、在项目中创建log.py文件,内容如下:

  • import os
  • import logging
  • from logging.handlers import TimedRotatingFileHandler
  • path = os.path.split(os.path.realpath(__file__))[0]
  • log_path = os.path.join(path, 'result')#存放log文件的路径
  • class Logger(object):
  • def __init__(self, logger_name='logs…'):
  • self.logger = logging.getLogger(logger_name)
  • logging.root.setLevel(logging.NOTSET)
  • self.log_file_name = 'test.log'#日志文件的名称
  • self.backup_count = 5#最多存放日志的数量
  • # 日志输出级别
  • self.console_output_level = 'WARNING'
  • self.file_output_level = 'DEBUG'
  • # 日志输出格式
  • self.formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
  • def get_logger(self):
  • """在logger中添加日志句柄并返回,如果logger已有句柄,则直接返回"""
  • if not self.logger.handlers: # 避免重复日志
  • console_handler = logging.StreamHandler()
  • console_handler.setFormatter(self.formatter)
  • console_handler.setLevel(self.console_output_level)
  • self.logger.addHandler(console_handler)
  • # 每天重新创建一个日志文件,最多保留backup_count份
  • file_handler = TimedRotatingFileHandler(filename=os.path.join(log_path, self.log_file_name), when='D',
  • interval=1, backupCount=self.backup_count, delay=True, encoding='utf-8')
  • file_handler.setFormatter(self.formatter)
  • file_handler.setLevel(self.file_output_level)
  • self.logger.addHandler(file_handler)
  • return self.logger
  • logger = Logger().get_logger()

二、随便新建一个文件或者在自己py文件中引入,我这里随便新建了一个test_logger.py文件。里面随便写了一些内容

  • import os
  • import log
  • path = os.path.split(os.path.realpath(__file__))
  • file_path = os.path.join(path[0], path[1])
  • print(path)
  • print(path[0])
  • print(path[1])
  • print(file_path)
  • logger = log.logger
  • logger.info('随便打印')#在您的项目中需要打印日志的代码模块,添加logger.info()

三、运行该test_logger.py文件,在项目中的result下生成了一个test.log文件打开查看

小结:在需要输入日志的文件中引入自己的log.py文件,我这里的引入为import log,创建log实例,logger=log.logger。在需要打印日志的代码模块添加logger.info('随便打印')

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门