您的位置:首页 > 编程语言 > Python开发

python 日志打印

2015-10-23 11:07 218 查看
output some logs into console(screen) and some logs into a log file.

e.g. warning and higher logs need output into screen, and all logs dump into a logfile.

import logging
import sys
import os

def setup_test_logging(logfile = None, console_min_level = logging.WARN, file_min_level = logging.DEBUG):
""" setup logging for test, output logs on console (default logging.WARN) and logfile(default logging.DEBUG)"""
if logfile is None:
filename = os.path.basename(sys.argv[0]).replace('.py', '.log')
else:
filename = logfile
logging.basicConfig(format='%(asctime)s %(filename)s:%(lineno)d %(levelname)-8s %(message)s', level=file_min_level, filename = filename)
console = logging.StreamHandler(stream = sys.stdout)
console.setLevel(console_min_level)
formatter = logging.Formatter('%(asctime)s %(filename)s:%(lineno)d %(levelname)-8s %(message)s')
console.setFormatter(formatter)
logging.getLogger('').addHandler(console)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: