Tôi chỉ muốn có thể ghi đè cấp độ nhật ký bảng điều khiển trong tệp cài đặt. Tôi đọc số django logging document, nhưng tôi đang gặp sự cố khi đăng nhập làm những gì tôi muốn. Tài liệu đảm bảo với tôi rằng:cách súc tích để thay đổi cấp độ điều khiển django cấp độ đăng nhập
"Từ Django 1.5 về phía trước, cấu hình ghi của dự án được hợp nhất với mặc định của Django, do đó bạn có thể quyết định xem bạn có muốn thêm hoặc thay thế cấu hình hiện có hay không. đặt khóa disable_existing_loggers thành True trong LOGISTING dictConfig. Hoặc bạn có thể xác định lại một số hoặc tất cả các logger. "
Vì vậy, tôi cố gắng chỉ thêm dòng sau vào settings.py của tôi:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console':{
'level': 'DEBUG',
},
},
}
... nhưng tôi nhận được một ngoại lệ:
<snip>
File "/usr/lib/python2.7/logging/config.py", line 575, in configure
'%r: %s' % (name, e))
ValueError: Unable to configure handler 'console': 'NoneType' object has no attribute 'split'
Hội chợ đủ. Dường như muốn toàn bộ khối cấu hình. Vì vậy, tôi cố gắng những gì tôi nghĩ sẽ là giao diện điều khiển logger cấu hình đơn giản nhất:
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'simple': {
'format': '%(levelname)s %(message)s'
},
},
'handlers': {
'console':{
'level': 'INFO',
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
},
'loggers': {
'default': {
'handlers': ['console'],
'level': 'INFO',
'filters': []
}
}
}
Ý định của tôi là để thiết lập các bản ghi cấp để INFO, nhưng tôi vẫn thấy một loạt các thông điệp DEBUG, và chuỗi MYFORMATTER không xuất hiện trong bất kỳ cách nào trong số họ.
Cuối cùng, với sự lạc quan mù quáng, tôi đã cố gắng này:
from django.utils.log import DEFAULT_LOGGING
DEFAULT_LOGGING['handlers']['console']['level'] = 'INFO'
tôi phải mất một cái gì đó khá rõ ràng ở đây.
BTW, tôi đang sử dụng Django 1.5.1.
Bạn có thể quan tâm đến [sentry] (https://github.com/getsentry/sentry). –