trong/yii-sentry

Yii PHP 框架的 Sentry。基于 crisu83 的实际 Raven 版本。

1.4.5 2016-11-02 18:03 UTC

This package is not auto-updated.

Last update: 2024-09-18 08:04:46 UTC


README

Latest Stable Version

Yii PHP 框架的 Sentry。

yii-sentry 是一个 Yii 扩展,允许将数据发送到 Sentry。它包含一个应用程序组件,允许集中访问 Raven 客户端,一个错误处理器将错误和异常发送到 Sentry,以及一个日志路由器将日志消息发送到 Sentry。从未如此轻松地专业管理您的错误。

特性

  • 应用程序组件,便于访问 Raven 客户端
  • 错误处理器,将错误发送到 Sentry
  • 日志路由器,将消息发送到 Sentry

资源

安装

安装此扩展最简单的方法是使用 Composer,将以下内容添加到您的 composer.json 文件中

  "require": {
    "trong/yii-sentry": "<replace-with-latest-version>"
  }

在您项目的根目录中运行以下命令以安装扩展

php composer.phar install

提示:创建一个指向 Composer 的 vendor 目录的路径别名,命名为 vendor,以便通过将它们添加到应用程序配置中的 aliases 来简化类映射到依赖项。如下所示

Yii::setPathOfAlias('vendor', dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'vendor');

如果您不想使用 Composer,您可以下载扩展及其依赖项,并手动设置一切。

下载扩展后,将其添加到您的应用程序配置中

  'components' => array(
    'sentry' => array(
      'class' => 'vendor.trong.yii-sentry.components.SentryClient',
      'dsn' => '<replace-with-your-sentry-dsn>'
    ),
  ),

以下配置参数适用于 SentryClient

  • dsn: (字符串) 连接到 Sentry 时使用的 dsn
  • environment: (字符串) 活跃环境的名称
  • enabledEnvironments: (数组) 将数据发送到 Sentry 的环境的名称列表
  • options: (数组) 以以下结构传递给 Raven 客户端的选项
    • logger: (字符串) 日志记录器的名称
    • auto_log_stacks: (布尔值) 是否自动记录堆栈跟踪
    • name: (字符串) 服务器的名称
    • site: (字符串) 安装的名称
    • tags: (数组) 描述事件的键/值对
    • trace: (布尔值) 是否发送堆栈跟踪
    • timeout: (整数) 连接到 Sentry 时的超时时间(以秒为单位)
    • exclude: (数组) 要排除的异常类名
    • shift_vars: (布尔值) 是否在创建回溯时移动变量
    • processors: (数组) 数据处理器列表

将错误发送到 Sentry

要启用 SentryErrorHandler,请将以下内容添加到您的应用程序配置中

  'components' => array(
    'errorHandler' => array(
      'class' => 'vendor.trong.yii-sentry.components.SentryErrorHandler',
    ),
  ),

以下配置参数适用于 SentryErrorHandler

  • sentryClientID: (字符串) Sentry 客户端组件 ID

就是这样,现在错误和异常将被发送到 Sentry。

将日志消息发送到 Sentry

要启用 SentryLogRoute,请将以下内容添加到您的应用程序配置中

  'components' => array(
    'log' => array(
      'class' => 'CLogRouter',
      'routes' => array(
        array(
          'class' => 'vendor.trong.yii-sentry.components.SentryLogRoute',
          'levels' => 'error, warning',
        ),
      ),
    ),
  ),

以下配置参数适用于 SentryLogRoute

  • sentryClientID: (字符串) Sentry 客户端组件 ID

就是这样,现在具有 errorwarning 级别的日志消息将被发送到 Sentry。

提示:不要将具有 trace 级别的日志消息发送到 Sentry,因为它会大大减慢您的应用程序。