gpt4 book ai didi

python - 如何在 Python 中向 Sentry 发送日志记录附件?

转载 作者:行者123 更新时间:2023-12-05 02:38:25 29 4
gpt4 key购买 nike

每次发生错误/异常时,我一直在尝试从 python 发送一个“.log”文件附件到 Sentry ,但到目前为止没有成功。 Sentry 不提供 python 的附件文档,所以我一直在阅读 java 附件示例 ( https://docs.sentry.io/platforms/java/enriching-events/attachments/ ),这是

import io.sentry.Sentry;
import io.sentry.Attachment;

Attachment fileAttachment = new Attachment("your/path/file.log");

// Global Scope
Sentry.configureScope(scope -> {
scope.addAttachment(fileAttachment);
});

// Clear all attachments in the global Scope
Sentry.configureScope(scope -> {
scope.clearAttachments();
});

// Local Scope
Sentry.withScope(scope -> {
scope.addAttachment(fileAttachment);
Sentry.captureMessage("my message");
});

尝试使用 sentry_sdk ( https://github.com/getsentry/sentry-python/tree/master/sentry_sdk ) 在 python 中进行类似的转换,我的代码是:

from sentry_sdk.scope import Scope
from sentry_sdk import configure_scope, push_scope

scope=Scope()
configure_scope(lambda scope: scope.add_attachment(path="sentry.log"))
push_scope(lambda scope: scope.add_attachment(path="sentry.log"))

附注在 python 中,Attachment() 对象在 scope.add_attachment() 中创建,因此不需要显式赋值。我也尝试了 push_scope() 但没有太大效果。

感谢任何有关此问题的帮助。

最佳答案

我能够通过添加这行代码 capture_exception(AttributeError()) 来发送附件,其中 AttributeError() 可以是内置异常或自定义异常一个派生自 Exception 类。最小的工作代码如下。

from sentry_sdk import configure_scope
from sentry_sdk.api import capture_exception

configure_scope(lambda scope: scope.add_attachment(path="sentry.log"))
capture_exception(AttributeError())

您可以通过访问进一步探索 https://github.com/getsentry/sentry-python/blob/master/tests/test_basics.py

关于python - 如何在 Python 中向 Sentry 发送日志记录附件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69581706/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com