25

Django サーバーを実行し、Sentry を使用して例外をキャプチャしています。Sentry を構成するときにRAVEN_CONFIG、さまざまなsettings.pyファイルを追加します。

INSTALLED_APPS = (
    'raven.contrib.django.raven_compat'
)

RAVEN_CONFIG = {
    'dsn': 'https://*****@app.getsentry.com/PORT_NUMBER',
}

ここで、空の文字列プロパティを使用できることを読みました。ただし、ここに示すようDSNに実行すると、次のようになります。python manage.py raven test

raven.exceptions.InvalidDsn: Unsupported Sentry DSN scheme:  ()

最善の解決策は、常に Raven クライアントを使用でき、設定ファイルで例外を送信するかどうかを定義することです。

もう 1 つの要件は、Clientモジュールを使用して例外をキャプチャすることです。このために、いくつかの値を設定する必要があります。DSN

from raven import Client
client = Client('https://<key>:<secret>@app.getsentry.com/<project>')

したがって、DSN値を設定しないことはできません

4

2 に答える 2

19

ここでは、空の文字列の DSN プロパティを使用できることを読みました。

空の文字列に設定するべきではありませんがDSN、代わりに開発設定構成で最初に設定を指定しないでください。DSN

RAVEN_CONFIG = {}
于 2016-03-12T15:06:13.267 に答える
10

ドキュメントには、値を設定する必要あるとは記載されていません。設定方法DSNの例があります。

In [1]: from raven import Client

In [2]: client = Client()
Raven is not configured (logging is disabled). Please see the documentation for more information.

In [3]: client.captureMessage('hello')  # it's a noop - no error, no capture.

空の文字列ではなく、パラメーターNoneとして渡す (または何も渡さない)必要があることに注意することが重要です。DSNInvalidDsn: Unsupported Sentry DSN scheme

また、ログでそれが気に入らない場合はRaven is not configured (logging is disabled)...、次のようにミュートできます。

>>> import logging
>>> logging.getLogger('raven').setLevel(logging.WARNING)
于 2016-03-28T11:22:45.817 に答える