日志记录

了解使用Python进行日志记录。

添加对Python日志记录的支持。

安装哨兵-sdk来自PyPI:

已复制
pip(点阵)安装 --升级哨兵-sdk

日志集成是默认集成,因此在初始化Sentry SDK时会自动启用。

已复制
进口sent_sdk
哨兵_斯达克.初始化(
直接序列号="https://examplePublicKey@o0.inest.sentry.io/0"
)

已复制
进口登录中
定义 主要的():
哨兵_斯达克.初始化(...)  #同上

登录中.调试(“我被忽视了”)
登录中.信息(“我是面包屑”)
登录中.错误(“我是一个事件”,额外的=字典(酒吧=43))
登录中.例外(“发生异常”)

主要的()
  • 消息将出现错误事件“我是一个事件”.
  • “我是面包屑”将作为面包屑附加到该事件。
  • 酒吧将在活动中结束额外的属性。
  • “发生异常”将从发送当前异常系统异常信息()使用堆栈跟踪和Sentry Python SDK的所有功能。如果没有异常,将附加当前堆栈。
  • 调试消息“我被忽视了”不会在任何地方浮出水面。要捕获它,您需要降低水平调试(见下文)。

要更改日志集成的默认行为,请手动实例化集成并将其传递给Sentry初始化功能:

已复制
进口登录中进口哨兵_斯达克哨兵_斯达克.集成.登录中进口日志记录集成
#SDK将遵循日志库设置的级别,默认为WARNING。
#如果我们想捕获严重性较低的记录,我们需要配置
#首先是记录器级别。
登录中.基本配置(水平=登录中.信息)

哨兵_斯达克.初始化(
直接序列号="https://examplePublicKey(https://examplePublicKey)@o0.inest.sentry.io/0",
集成=[
日志记录集成(
水平=登录中.信息,        #捕获信息和以上内容作为面包屑
事件级别=登录中.信息#将记录作为事件发送
        ),
    ],
)

可以将以下关键字参数传递给日志集成():

  • 水平(默认信息):Sentry Python SDK将记录级别高于或等于的日志记录水平作为面包屑。相反,SDK完全忽略任何级别低于此级别的日志记录。如果值为发生时,SDK不会将日志记录作为面包屑发送。

  • 事件级别(默认错误):Sentry Python SDK将报告级别高于或等于的日志记录事件级别只要记录器本身被设置为输出这些日志级别的记录(请参阅下面的注释)。如果值为发生时,SDK不会将日志记录作为事件发送。

有时,日志程序非常嘈杂,会向您发送毫无意义的错误信息。您可以通过调用忽略该记录器忽略日志记录程序:

已复制
哨兵_斯达克.集成.登录中进口忽略日志记录程序
忽略日志记录程序(“a.spammy.logger”)

记录器=登录中.获取记录器(“a.spammy.logger”)
记录器.错误(“嗨”)  #没有错误发送给哨兵

您还可以使用发送前前碎屑只忽略某些消息。请参见筛选事件了解更多信息。

而不是使用日志记录集成,您可以使用两个常规日志记录登录中。处理程序集成导出的子类。

通常,你不需要这个。可以将此与一起使用default_integrations=假如果您想选择Sentry Python SDK捕获的内容。然而,正确设置日志记录是很困难的。此外,捕获数据的opt-in方法会遗漏您自己可能想不到的错误。

请参阅API文档了解更多信息。

帮助改进此内容
我们的文档是开源的,可以在GitHub上获得。欢迎您的贡献,无论是纠正拼写错误(drat!)还是建议更新(“是的,这会更好”)。