Отключить отчеты Sentry при использовании djangos `manage.py shell` - PullRequest
0 голосов
/ 04 сентября 2018

Я использую сторож, чтобы сообщать об ошибках, происходящих в моем приложении django.

Есть ли способ отключить отправку сообщений об ошибках при использовании такой команды, как

python manage.py shell

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Существует недокументированная, но определенно стабильная настройка для этого:

RAVEN_CONFIG = {
    'install_sys_hook': False
}
0 голосов
/ 07 сентября 2018

Для игнорирования некоторых или всех типов исключений в Sentry вы можете использовать ignore_exceptions опция для RAVEN_CONFIG в вашем settings.py файле. ignore_exceptions принимает список классов исключений или путей строк. Вы можете прочитать больше о игнорировании исключений в документации Sentry здесь: https://docs.sentry.io/clients/python/advanced/

Чтобы игнорировать все исключения, вы можете передать ['*'] в ignore_exceptions, но вы хотите сделать это только тогда, когда процесс django был запущен с упомянутой рассматриваемой командой, которая может быть известна из sys.argv. Таким образом, желаемый результат может быть достигнут путем добавления следующих кодов в файл django settings.py:

import sys
SHOULD_IGNORE_EXCEPTIONS = " ".join(sys.argv).endswith("run python manage.py shell")

RAVEN_CONFIG = {
    'dsn': '...',
    'ignore_exceptions': ['*'] if SHOULD_IGNORE_EXCEPTIONS else [],
}
...