3

ステージング環境と本番環境で django-sentry を正常に実行していますが、私の開発インスタンスでは、sentry がログに記録されていないようです。

私は runserver の管理を使用しています。500 エラーが発生すると、コンソールに次のように表示されます。

Development server is running at http://192.168.56.100:8080/
Quit the server with CONTROL-C.
No handlers could be found for logger "sentry.errors"
[20/Apr/2011 17:26:56] "POST .... HTTP/1.1" 500 126470

local_settings で次のように設定しました。

DEBUG = True
SENTRY_TESTING = True

Google 検索では、「ハンドラがありません...」というエラー メッセージが表示されません。何かアイデアはありますか?

4

1 に答える 1

0

ロギングしていない開発ボックスの settings.py に、次のようなものを追加します。

import logging
logger = logging.getLogger("sentry.errors")
handler = logging.StreamHandler()
formatter = logging.Formatter("[%(levelname)s] %(name)s: %(message)s")
handler.setFormatter(formatter)
logger.addHandler(handler)

したがって、開発用デスクトップで標準の manage.py runserver を使用していると仮定すると、標準エラーに書き込む StreamHandler() が開き、コンソールに表示されます。

StreamHandler() ---> FileHandler("/tmp/debug.log", "w") を変更することもできます

sentry.errors ハンドラーにログを記録しているという事実は、開発セントリーの構成/設定に構成ミスがあることを示しています。

于 2011-06-15T20:02:03.343 に答える