私は見えるところを見ているDjango、セロリを使用するとログの一部が記録されない
logger.exception("hello")
が実行されています。
しかし、sentryやファイルには何も記録されません。
私は
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse'
}
},
'formatters': {
'verbose': {
'format': '[%(asctime)s] %(levelname)s (%(module)s:%(funcName)s:%(lineno)d) %(message)s'
},
'simple': {
'format': '%(levelname)s %(message)s'
},
},
'handlers': {
'null': {
'level': 'DEBUG',
'class': 'logging.NullHandler',
},
# Send all messages to console
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'verbose'
},
# Warning messages are sent to admin emails
'mail_admins': {
'level': 'WARNING',
'filters': ['require_debug_false'],
'class': 'django.utils.log.AdminEmailHandler',
},
# critical errors are logged to sentry
'sentry': {
'level': 'INFO',
'class': 'raven.contrib.django.raven_compat.handlers.SentryHandler',
},
},
'loggers': {
# This is the "catch all" logger
'': {
'handlers': ['console', 'sentry'],
'level': 'DEBUG',
'propagate': False,
},
'django.db.backends': {
'handlers': ['null'], # Quiet by default!
'propagate': False,
'level': 'DEBUG',
},
}
}
以下のようにログに関する設定を持っていると私は
import logging
logger = logging.getLogger(__name__)
logger.exception("error")
logger.info({"error": "foo"})
は、なぜ私は、ログの一部を失っていてものをログ?
は(私は、デバッガでコードを追ってきたし、ログが実行されましたが、歩哨/ログファイルに何も)セロリ、hijacks the root (''
) logger by defaultで...
'DEBUG'設定の値は何ですか? –
私はFalseとTrueの両方を試しましたが、同じ結果です。 – eugene
このプロジェクトでセロリを使用していますか? – solarissmoke