删除哨兵中的当前面包屑

时间:2019-06-03 10:37:03

标签: python sentry

我有简单的同步代码,如下所示:

import sentry_sdk
from time import sleep


sentry_sdk.init(MY_DSN)
while True:
    # remove sentry breadcrumbs here, so they would not accumulate
    try:
        do_my_stuff()
    except:
        handle_my_exception()

    sleep(some_non_linear_algorithm())  # I would like not to use crontab

发生异常时,岗哨将捕获该异常以及先前迭代中的所有面包屑,因此我需要在每次迭代开始时删除所有当前的面包屑。但是我在哨点文档中找不到任何API可以做到这一点。

1 个答案:

答案 0 :(得分:1)

将您的代码包装在此:

with sentry_sdk.push_scope():
    try:
        ...
    except:
        ...

这将确保您在迭代之间不会泄漏面包屑,标签等。

或者,您可以使用:

with sentry_sdk.configure_scope() as scope:
    scope.clear()