python的logging模块

2019-08-22  本文已影响0人  X2X_0de0

今天维护一个Python写的拉取mysql数据库数据到hive数据仓库的脚本。发现里边的日志竟然都是print出来的,调试起来很吃力所以在这个工具中加入logging输出日志,方便生产故障的跟踪和解决。

import logging

#创建一个logger

logger = logging.getLogger('mylogger')

logger.setLevel(logging.DEBUG)

#创建一个filehandler 输出日志到一个文件中,级别为debug以上

#filehandler = logging.StreamHandler('test.log')

#filehandler.setLevel(logging.DEBUG)

#创建一个control handler 输出日志到控制台,级别为debug以上

handler = logging.StreamHandler()

handler.setLevel(logging.DEBUG)

#定义handler输出格式

formatter = logging.Formatter('%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')

handler.setFormatter(formatter)

logger.addHandler(handler)

#打印日志

logger.info("info message")

logger.warn("warn message")

logger.error("error message")

在记录日志后移除handler

logger.removeHandler(handler)

上一篇下一篇

猜你喜欢

热点阅读