5

django-sentry一体型で取り付けました。次に、実行python manage.py shellして次のようにログを記録しようとしました:

>> import logging
>> mylog = logging.getLogger('sentrylogger')
>> mylog.handlers
[<logging.StreamHandler instance at 0x9f6130c>,
 <sentry.client.handlers.SentryHandler instance at 0x9ffed4c>]

>> mylog.debug('this is a test 1')
DEBUG 2011-09-28 11:10:33,178 <ipython console> 4607 -1217300800 this is a test 1
No handlers could be found for logger "sentry.errors"

現在、セントリーには何も書き込まれていません。ロガー 'sentry.errors' が見つからないことが、sentry にログを記録できない根本的な原因だと思います。私は正しい軌道に乗っていますか?

4

2 に答える 2

4

はい、ハンドラーがありません。あるログへのロギングが別のログ インスタンスに影響する理由を説明することはできませんが、 mylog.debug(..) を実行する前にこれを書き込もうとすると、うまくいくでしょう。

sentry_errors_log = logging.getLogger("sentry.errors")
sentry_errors_log.addHandler(logging.StreamHandler())

さらに、sentry.errors ログ ハンドラーを手動で追加しているように見える古いバージョンに関するドキュメントを参照してください。

http://readthedocs.org/docs/sentry/en/latest/config/index.html#older-versions

于 2011-09-28T11:32:12.357 に答える
1

HTTPS を使用して独自のドメインで sentry を実行している場合、sentry SNI サポートにバグがあります。詳細については、 https://github.com/getsentry/raven-python/issues/523を確認してください。簡単な回避策は、DSN スキームをthreaded+requests+https次のように置き換えることです。

RAVEN_CONFIG = {
    'dsn': 'threaded+requests+https://xxxxxxxxxxxx@sentry.example.com/1',
}
于 2018-11-30T17:49:46.790 に答える