python日志模块logging

import logging.handlers
import os

#baseconfig
logger=logging.getLogger()
logger.setLevel(logging.DEBUG)
#设置log文件所在的路径和文件名名
log_path=os.path.dirname(os.path.abspath(__file__))
logname=log_path+'/'+'test.log'

fh=logging.handlers.TimedRotatingFileHandler(logname,when='s',interval=1,backupCount=2,encoding="utf-8")
#设置日志输出格式
formater=logging.Formatter(fmt="%(asctime)s-%(filename)s-%(module)s-[line:%(lineno)d]%(levelname)s-%(message)s",datefmt="%Y-%m-%d %X")

#创建一个file handler
fh=logging.FileHandler(logname,mode='a')
fh.setLevel(logging.DEBUG)

#创建一个串口console handler
ch=logging.StreamHandler()
ch.setLevel(logging.DEBUG)

#为logger添加日志处理器
logger.addHandler(fh)
logger.addHandler(ch)

#为logger制定日志输出格式
ch.setFormatter(formater)
fh.setFormatter(formater)

#日志消息
logger.info("this is a info message")
logger.debug("this is a debug message")
logger.critical("this is a critical messsage")
logger.error("this is a error message")
logger.warning("this is a warning message")

 执行效果:

控制台输入:

 

 文件输出:

 

posted @ 2020-04-21 15:28  -夏至未至-  阅读(115)  评论(0编辑  收藏  举报