emgiezet / errbit-php
errbit/airbrake 与 php 的 psr-2 集成
Requires
- php: ^8.0||8.1||8.2||^8.3
- ext-simplexml: *
- guzzlehttp/guzzle: ^7.5.0
Requires (Dev)
- mockery/mockery: 1.5.1
- php-coveralls/php-coveralls: ^2.5
- phpstan/phpstan: ^1.9
- phpunit/phpunit: 9.4.4
- rector/rector: ^0.15.10
- vimeo/psalm: ^5.6
Replaces
- flippa-official/errbit-php: dev-master
- nodrew/php-airbrake: dev-master
- dev-master / 2.0.x-dev
- 2.0.2
- 2.0.1
- 2.0.0
- 1.1.1
- 1.1.0
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-feature/php8.3-support
- dev-psalm-fixes
- dev-insights-fixes
- dev-feature/coveralls-update
- dev-feature/php8.0-support
- dev-feature/php81
- dev-emgiezet-gh-actions
- dev-circleci-project-setup
- dev-php74
- dev-guzzle-transport
This package is auto-updated.
Last update: 2024-08-25 08:54:56 UTC
README
这是一个功能齐全的客户端,可以将与Errbit(或Airbrake)的集成添加到任何PHP 8.0和8.1应用程序中。
原始想法和源代码不支持php命名空间。此外,存在一个bug,并且在新版的errbit版本中,xml不支持某些字符。
这是做什么用的?
处理您的错误并将它们传递到名为Errbit的错误保留工具。这是sentry.io或airbrake.io的免费替代品。请查看下面的演示!
变更日志
查看
安装
Composer方法
针对php 5.3
require: { ... "emgiezet/errbit-php": "1.*" }
针对php 8.0+
require: { ... "emgiezet/errbit-php": "2.*" }
使用方法
要设置一个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。
如果您想手动通知异常,可以在不调用start()
的情况下调用notify()
。这样,您可以避免注册处理器。
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集成
请参阅集成文档。
Kohana 3.3集成
查看kohana-errbit以获取kohana 3.3集成。
Symfony 1.4集成
php 5.2中没有命名空间,因此此库无法使用。请转到filipc/sfErrbitPlugin并监控您的遗留1.4应用程序。
许可权 & 版权
版权 © mmx3.pl 2013 MIT许可下发布。基于git://github.com/flippa/errbit-php.git的想法,但重写了90%。