nkovacs / errbit-php
errbit/airbrake 与 PHP 的高 psr-2 集成
Requires
- php: >=5.3.2
Requires (Dev)
- mockery/mockery: dev-master
- phpunit/phpcov: 2.0.*@dev
- phpunit/phpunit: 4.*
- satooshi/php-coveralls: dev-master
Replaces
- flippa-official/errbit-php: dev-master
- nodrew/php-airbrake: dev-master
This package is auto-updated.
Last update: 2024-08-25 03:16:59 UTC
README
这是一个功能齐全的客户端,可以将 Errbit(或 Airbrake)的集成添加到任何 PHP >= 5.3 应用程序中。
原始想法和源代码不支持 PHP 命名空间。此外,它有一个错误,并且在新版 Errbit 版本中,xml 不支持某些字符。
它是用来做什么的?
查看下面的演示!
安装
我们没有将其放入 PEAR 或类似的东西中(请随时贡献),因此您需要本地安装。
克隆方法
git clone git://github.com/emgiezet/errbitPHP.git
Composer 方法
require: { ... "emgiezet/errbit-php": "dev-master" }
使用方法
要设置 Errbit 实例,您需要使用参数数组进行配置。其中只有两个是必需的。
use Errbit\Errbit; Errbit::instance() ->configure(array( 'api_key' => 'YOUR API KEY', 'host' => 'YOUR ERRBIT HOST, OR api.airbrake.io FOR AIRBRAKE' )) ->start();
查看完整的 配置。
这将注册错误处理器
set_error_handler(); set_exception_handler(); register_shutdown_function();
并将由处理器拦截的所有错误记录到您的 errbit 中。
如果您想手动通知一个异常,可以调用 notify()
而不调用 start()
。这样,您可以避免注册处理器。
use Errbit\Errbit; try { somethingErrorProne(); } catch (Exception $e) { Errbit::instance()->notify( $e, array('controller'=>'UsersController', 'action'=>'show') ); }
使用自己的错误处理器
如果您不想 Errbit 安装其自己的错误处理器而希望使用自己的,只需省略对 start()
的调用,然后在捕获到异常的地方(注意错误 必须 转换为异常)简单地调用
use Errbit\Errbit; Errbit::instance()->notify($exception);
使用此类型的使用。库将不会处理由
set_error_handler(); register_shutdown_function();
仅使用一些默认处理器
Errbit 安装了三种错误处理器:异常、错误和致命。
默认情况下,所有三种都使用。如果您想为某些处理器使用自己的,但不为其他处理器使用,请将列表传递给 start()
方法。
use Errbit\Errbit; Errbit::instance()->start(array('error', 'fatal')); // using our own exception handler
Symfony2 集成
有关 symfony2 集成的说明,请参阅 文档。
Kohana 3.3 集成
查看 kohana 3.3 集成的 kohana-errbit。
Symfony 1.4 集成
PHP 5.2 中没有命名空间,因此此库无法使用。转到 filipc/sfErrbitPlugin 并监控您的遗留 1.4 应用程序。
许可权 & 版权
版权所有 © mmx3.pl 2013 MIT 许可证下授权。基于 git://github.com/flippa/errbit-php.git 的想法,但重写了 90%。有关详细信息,请参阅 LICENSE 文件。
贡献者
主要想法 @flippa OOP 重构、测试和打包 @emgiezet
其他贡献者: 贡献者页面