#python-3.x #django #sentry
Вопрос:
Это текущая реализация, которую я имею:
from sentry_sdk import push_scope
def run():
with push_scope() as scope:
message = "Failed"
scope.set_tag("custom", "tag")
raise Exception(message)
Но, согласно документам with-scope
, контекстный менеджер проглотит исключение, возникшее внутри. Проблема в том, что мне нужен этот метод run
, чтобы на самом деле вызвать исключение, поэтому он не отправляет ответ пользователю.
Если я обработаю поток и зафиксирую событие sentry в with-scope
контекстном менеджере, а затем вызову вне контекстного менеджера, я получу дубликаты событий в Sentry ?
from sentry_sdk import push_scope, capture_exception
def run():
with push_scope() as scope:
message = "Failed"
scope.set_tag("custom", "tag")
capture_exception(message)
raise Exception(message)
Действительно ли это отправляет два события Sentry и/или есть лучший способ решить эту проблему, возможно, заставляя sentry игнорировать raise
на данный момент ?