我有一个这样的日志记录器初始化函数:
def generate_logger():
import logging
LOG_FILENAME = os.path.join(PROJECT_DIR, "mylog.log")
FORMAT = "%(asctime)s : %(message)s"
logger = logging.getLogger()
logger.setLevel(logging.INFO)
fh = logging.FileHandler(LOG_FILENAME)
formatter = logging.Formatter(FORMAT)
fh.setFormatter(formatter)
logger.addHandler(fh)
return logger
而在我的代码的某个部分,我有这样的异常捕捉:
logger = generate_logger()
except AttributeError:
logger.error('Opps we got an error')
奇怪的是我得到了相同的错误两次,但只能捕获一次,当我用print "test"
替换logger.error('Opps we got an error')
时,我只打印了一次"test"。
问题和解决方案是什么?