Sentryは、すべての例外を自動的にキャッチしてログに記録します。(ロガーを使用して)ロギング自体に関しては、デフォルトではそれらをキャッチしません。設定する必要があります。
ここでロギングを設定する方法を見ることができます。警告:最初は難しいようです。
編集:公式ドキュメントからの抜粋(2018年7月26日):
ロギングとの統合:
標準ライブラリのロギングモジュールと統合し、すべてのERROR以上のメッセージを歩哨に送信するには、次の構成を使用できます。
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'root': {
'level': 'WARNING',
'handlers': ['sentry'],
},
'formatters': {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s '
'%(process)d %(thread)d %(message)s'
},
},
'handlers': {
'sentry': {
'level': 'ERROR', # To capture more than ERROR, change to WARNING, INFO, etc.
'class': 'raven.contrib.django.raven_compat.handlers.SentryHandler',
'tags': {'custom-tag': 'x'},
},
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'verbose'
}
},
'loggers': {
'django.db.backends': {
'level': 'ERROR',
'handlers': ['console'],
'propagate': False,
},
'raven': {
'level': 'DEBUG',
'handlers': ['console'],
'propagate': False,
},
'sentry.errors': {
'level': 'DEBUG',
'handlers': ['console'],
'propagate': False,
},
},
}
使用法:ログの使用法は、Djangoの外部と同じように機能しますが、追加のデータにオプションのリクエストキーが追加されます。
logger.error('There was some crazy error', exc_info=True, extra={
# Optionally pass a request and we'll grab any information we can
'request': request,
})