创建一个全局记录器,可用于
- 创建一个新的日志文件或
- 返回全局日志文件的记录器。
创建一个名为 myLogger.py 的模块:这将具有日志创建代码
myLogger.py:
import logging
def myLog(name, fname = 'myGlobalLog.log'):
'''Debug Log'''
logger = logging.getLogger(name);
logger.setLevel(logging.DEBUG)
fhan = logging.FileHandler(fname)
fhan.setLevel(logging.DEBUG)
logger.addHandler(fhan)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fhan.setFormatter(formatter)
'''comment this to enable requests logger'''
#logger.disabled = True
return logger
现在在你的模块中创建一个新日志,比如 A.py
from myLogger import myLog
log = myLog(__name__, 'newLog.log')
log.debug("In new log file")
因此,您必须在获取记录器时传递文件名。
要在 A.py 中使用全局记录器:
from myLogger import myLog
log = myLog(__name__)
log.debug("In myGlobalLog file")
在这种情况下不需要传递文件名,因为我们将使用全局日志。