networkteam/sentryclient

Flow 框架的 Sentry 客户端

6.3.0 2024-08-21 14:46 UTC

README

这是一个为 Flow 框架提供的 Sentry 客户端包。如果您想使用此包与 Neos CMS 结合使用,请使用 Networkteam.Neos.SentryClient

它基于 https://github.com/getsentry/sentry-php

有关 Sentry 的更多信息,请查看 https://sentry.io

安装

$ composer require networkteam/sentryclient

Sentry 客户端的兼容性表格

从 1.0.3 版本开始,客户端的版本控制方案出现了问题。这个问题在 2.x 和 3.x 版本中已得到修复。

配置

将以下内容添加到您的 Settings.yaml 文件中,并用您项目的 DSN(Sentry 项目中的 API 密钥)替换 dsn 设置

Networkteam:
  SentryClient:
    # The Sentry DSN
    dsn: 'http://secret_key@your-sentry-server.com/project-id'

您可以通过实现 \Networkteam\SentryClient\User\UserContextServiceInterface 将自己的用户上下文信息传递到日志中。如果您没有 Neos.Party 包并且不想实现自己的 UserContextService,您需要在 Objects.yaml 中设置 \Networkteam\SentryClient\User\DummyUserContext,如下所示:

Networkteam\SentryClient\User\UserContextServiceInterface:
  className: Networkteam\SentryClient\User\DummyUserContext

这将防止收集任何用户信息,除非是通过 Flow SecurityContext 可用的信息。

版本跟踪

您可以通过环境变量 FLOW_RELEASE 或在 Settings.yaml 中设置值将 版本 传递给 Sentry 客户端

Networkteam:
  SentryClient:
    release: '1.2.3-alpha1'

用法

Sentry 将记录所有启用了 logException 渲染选项的异常。这可以通过根据 Flow 配置的状态码或异常类启用或禁用。

开发

此包由 GitHub 管理。请随时在 https://github.com/networkteam/Networkteam.SentryClient 联系。

许可证

有关许可证权利和限制(MIT),请参阅 LICENSE 文件。