# -*- coding: utf-8 -*- import sys import logging logging.basicConfig(level=logging.INFO, format='%(asctime)s %(filename)s : LINE %(lineno)-4d %(levelname)s %(message)s', datefmt='%Y-%m-%d %A %H:%M:%S', filename="{0}.log".format(sys.argv[0]), filemode='a') console = logging.StreamHandler() console.setLevel(logging.DEBUG) # 屏幕显示的级别 formatter = logging.Formatter('%(asctime)s %(filename)s : LINE %(lineno)-4d %(levelname)s %(message)s') console.setFormatter(formatter) logging.getLogger().addHandler(console) log = logging.getLogger(__name__) def get_log(): logging.basicConfig(level=logging.INFO, format='%(asctime)s %(filename)s : LINE %(lineno)-4d %(levelname)s %(message)s', datefmt='%Y-%m-%d %A %H:%M:%S', filename="/data/logs/1.log", filemode='a') console = logging.StreamHandler() console.setLevel(logging.DEBUG) # 屏幕显示的级别 formatter = logging.Formatter('%(asctime)s %(filename)s : LINE %(lineno)-4d %(levelname)s %(message)s') console.setFormatter(formatter) logging.getLogger().addHandler(console) log = logging.getLogger(__name__) return log def define_logger(filename="/data/logs/mylog.log"): logger = logging.getLogger("main") logger.setLevel(logging.INFO) # 设置输出格式 formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') # 设置日志文件处理器 fh = logging.FileHandler(filename) fh.setFormatter(formatter) # 为这个处理器添加格式 # 设置屏幕stdout输出处理器 sh = logging.StreamHandler(stream=None) sh.setFormatter(formatter) # 把处理器加到logger上 logger.addHandler(fh) logger.addHandler(sh)