django - Django:无法配置处理程序“控制台”
问题描述
我在 settings.py 文件中有一个简单的日志记录定义:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'simple': {
'format': '[%(asctime)s] %(levelname)s %(message)s',
},
'verbose': {
'format': '[%(asctime)s] %(levelname)s [%(name)s.%(funcName)s:%(lineno)d] %(message)s',
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatters': 'simple',
'propagate': False
}
},
'loggers': {
'myapp': {
'handlers': ['console'],
'level': 'DEBUG'
},
}
}
当我运行我的程序时,我得到了错误:
ValueError: Unable to configure handler 'console'
出了什么问题?
解决方案
propagate
不是处理程序的选项,而是记录器的选项。所以你的配置应该是。
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'simple',
}
},
'loggers': {
'myapp': {
'handlers': ['console'],
'level': 'DEBUG',
'propagate': False
},
}
推荐阅读
- django - 如何使用带有默认参数的 update_or_create
- pandas - 将每日股票收益转换为每周股票收益
- windows - 有没有办法在 xml 文件中找到特定的字符串,然后用批处理脚本替换它下面的下一个字符串?
- java - Spring Security HttpSecurity 配置
- reactjs - 在 React Router DOM 的历史导入中未定义 createBrowserHistory
- java - Spock 和 Groovy:变量赋值导致 null
- javascript - Ionic 4 插件 - 对象不是函数
- c++ - 为什么 std::tuple 的代码无法在 MSVC 上编译
- asp.net - MissingMethodException:升级 EF6 后无效 System.Data.Entity.Infrastructure.LocalDbConnectionFactory..ctor()
- uiviewcontroller - 如何将一个视图控制器的方向锁定为横向模式 [iOS13]