minbaby/hyperf-sentry
最新稳定版本:v3.0.3
Composer 安装命令:
composer require minbaby/hyperf-sentry
包简介
README 文档
README
WARNING
-
原版sentry更新比较多,如果需要可以自行 fork 然后修改。
-
新版升级,改动较多
- 使用 class_map 重写
\Sentry\SentrySdk - 使用 Aspect,拦截单例,
Minbaby\HyperfSentry\Aspect\SingletonHookAspect::class
- 使用 class_map 重写
已知问题
-
sentry/sdk 依赖的 http 类库报错
报错
Argument 1 passed to swoole_curl_setopt() must be an instance of Swoole\Curl\Handler, null givenvendor/sentry/sentry/src/Transport/HttpTransport.php:110vendor/symfony/http-client/Response/CurlResponse.php:74
解决方案:
- 编译
swoole的时候, 需要启用--enable-swoole-curl参数, - 关闭CURL HOOK,修改
SWOOLE_HOOK_FLAGStoSWOOLE_HOOK_ALL ^ SWOOLE_HOOK_CURL
说明:
- 从 v4.5.4 版本起,
SWOOLE_HOOK_ALL包括SWOOLE_HOOK_CURL(这种是不完全hook,在某些场景下会报错) - 从 v4.6.0 版本起,启用
--enable-swoole-curl后,SWOOLE_HOOK_ALL包括SWOOLE_HOOK_NATIVE_CURL
说明
sentry/sdk 类库经过更新迭代,当前版本已经非常现代化了(3.0+)。再辅以 Hyperf 2.0+ 强大的 AOP功能,除了少部分单例和辅助方法,基本已经不需要特殊修改了。
版本
主版本和 hyperf 保持一致
| version | hyperf version | 说明 |
|---|---|---|
| 0.1.* | 1.1.* | - |
| 2.0.* | 2.0.* | - |
| 2.2.* | >=2.1.* | 本次更新移除 hyperf 包依赖 |
| 3.0.* | >=3.0.* | 因为 Hyperf\Utils\Context => Hyperf\Utils\Context |
使用
- 安装
composer require minbaby/hyperf-sentry
- 配置文件
发布: php bin/hyperf.php vendor:publish minbaby/hyperf-sentry
然后在 .env 中添加 SENTRY_DSN=
- 注册
SentryExceptionHandler
return [ 'handler' => [ 'http' => [ Minbaby\HyperfSentry\SentryExceptionHandler::class, App\Exception\Handler\AppExceptionHandler::class, ], ], ];
- 执行
php bin/hyperf.php sentry:test
参考
统计信息
- 总下载量: 26.17k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 19
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-05-29