
您可以
logging.basicConfig通过
logging以下方法使用默认接口:
import logginglogging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(name)s.%(funcName)s +%(lineno)s: %(levelname)-8s [%(process)d] %(message)s', )
现在,只要在应用程序中的任何位置执行以下 *** 作,都将使用此定义:
import logginglogging.error(...)
虽然
__name__无法使用,等效(和其他选项)都可以通过默认的
LogRecord属性,可以用于错误字符串格式化-包括
module,
filename和
pathname。以下是此 *** 作的两个脚本演示:
脚本
import logginglogging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(module)s %(name)s.%(funcName)s +%(lineno)s: %(levelname)-8s [%(process)d] %(message)s', )from scriptb import my_viewmy_view()
scriptb.py
import loggingdef my_view(): # Log an error message logging.error('Something went wrong!')日志记录定义是在中定义的
scripta.py,带有添加的
module参数。在这里,
scriptb.py我们只需要导入
logging即可访问此定义的默认值。运行时,
scripta.py将生成以下输出:
2016-01-14 13:22:24,640 scriptb root.my_view +9: ERROR [14144] Something went wrong!
其中显示了
scriptb记录错误的模块()。
根据此答案,您可以通过关闭Django处理并按如下所示设置根处理程序来继续使用从Django进行日志记录的每个模块配置:
# settings.py - django configLOGGING_ConFIG = None # disables Django handling of loggingLOGGING = {...} # your standard Django logging configurationimport logging.configlogging.config.dictConfig(LOGGING)欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)