errbit/errbit-php

该软件包已被废弃,不再维护。未建议替代包。

PHP 5.3 的日志记录

dev-master 2014-11-26 21:08 UTC

This package is not auto-updated.

Last update: 2020-01-24 15:00:23 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

Errbit-PHP Composer 包

这是根据 Composer 包调整的原始 [Errbit-PHP] (https://github.com/flippa/errbit-php) 包。您可以在 [这里] (https://github.com/errbit/errbit) 找到 Errbit。

Errbit & Airbrake Client for PHP

这是一个全功能的客户端,可以将 Errbit(或 Airbrake)集成到任何 PHP >= 5.3 应用程序中。

我们遇到了一些与 php-airbrake-notifier 客户端相关的问题,所以我们基于实际的 airbrake gem 编写了这个。

php-airbrake-notifier 客户端会定期尝试向 Airbrake 服务发送无效的 XML,并且根本无法与 Errbit(免费的自托管 Airbrake 兼容应用程序)一起工作。

安装

我们没有将其放入 PEAR 或类似的东西中(请随时贡献),因此您需要本地安装。

git clone git://github.com/flippa/errbit-php.git

使用方法

使用通知器的预期方式是作为单例,尽管这并非强制性的,如果您有某种奇怪的原因需要多个实例,或者单例一词让您感到难过,您也可以实例化多个实例。

require_once 'errbit-php/lib/Errbit.php';

Errbit::instance()
  ->configure(array(
    'api_key'           => 'YOUR API KEY',
    'host'              => 'YOUR ERRBIT HOST, OR api.airbrake.io FOR AIRBRAKE',
    'port'              => 80,                                   // optional
    'secure'            => false,                                // optional
    'project_root'      => '/your/project/root',                 // optional
    'environment_name'  => 'production',                         // optional
    'params_filters'    => array('/password/', '/card_number/'), // optional
    'backtrace_filters' => array('#/some/long/path#' => '')      // optional
  ))
  ->start();

这将安装错误处理器,捕获您的 PHP 错误(根据您的 error_reporting 设置)并将它们记录到 Errbit。

如果您想手动通知异常,可以调用 notify()

try {
  somethingErrorProne();
} catch (Exception $e) {
  Errbit::instance()->notify(
    $e,
    array('controller'=>'UsersController', 'action'=>'show')
  );
}

使用自己的错误处理器

如果您不想让 Errbit 安装自己的错误处理器而更喜欢使用自己的,只需省略对 start() 的调用即可,然后在您捕获到 Exception 的任何地方(注意错误必须转换为 Exception),只需调用

Errbit::instance()->notify($exception);

仅使用默认处理器中的某些处理器

Errbit 安装了三个错误处理器:异常、错误和致命。

默认情况下,都使用这三种处理器。如果您只想使用某些处理器,但不是所有处理器,请将列表传递给 start() 方法。

Errbit::instance()->start(array('error', 'fatal')); // using our own exception handler

待办事项

一些测试将很不错。

许可证 & 版权

版权所有 © Flippa.com Pty. Ltd. 在 MIT 许可证下授权。有关详细信息,请参阅 LICENSE 文件。