epictest/hawk.php

Hawk.so 的 PHP 错误捕获模块

2.1.9 2022-02-22 18:41 UTC

This package is auto-updated.

Last update: 2024-09-23 11:53:07 UTC


README

Hawk.so 的 PHP 错误捕获。

设置

  1. 注册一个账户,创建一个项目并获取一个集成令牌。

  2. 通过 composer 安装 SDK 以安装捕获器

捕获器支持 PHP 7.2 或更高版本

$ composer require codex-team/hawk.php

配置

\Hawk\Catcher::init([
    'integrationToken' => 'your integration token'
]);

初始化后,您可以设置任何将发送到 Hawk 的事件的 usercontext

\Hawk\Catcher::get()
    ->setUser([
        'name' => 'user name',
        'photo' => 'user photo',
    ])
    ->setContext([
        ...
    ]);

手动发送事件和异常

使用 sendException 方法发送任何捕获的异常

try {
    throw new Exception("Error Processing Request", 1);
} catch (Exception $e) {
    \Hawk\Catcher::get()->sendException($e);
}

使用 sendEvent 方法发送任何数据(日志、通知或其他内容)

\Hawk\Catcher::get()->sendMessage('your message', [
    ... // Context
]);

过滤敏感信息

使用 beforeSend 钩子来过滤您不想发送到 Hawk 的任何数据。使用设置器来清除任何属性。

\Hawk\Catcher::init([
    // ...
    'beforeSend' => function (\Hawk\EventPayload $eventPayload) {
        $user = $eventPayload->getUser();
        
        if (!empty($user['email'])){
            unset($user['email']);
        
            $eventPayload->setUser($user);
        }

        return $eventPayload;
    }
]);

问题和改进

请随意提问或改进项目。

链接

仓库:https://github.com/codex-team/hawk.php

报告错误:https://github.com/codex-team/hawk.php/issues

Composer 包:https://packagist.org.cn/packages/codex-team/hawk.php

CodeX 团队:https://ifmo.su

许可协议

MIT