iivannov/snitch 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

iivannov/snitch

Composer 安装命令:

composer require iivannov/snitch

包简介

Easily log and report exceptions to multiple different places (file, database, Sentry, Bugsnag, ...)

README 文档

README

The package gives you the ability to define multiple handlers and subscribe them to accept different Exceptions that will be logged or reported. This way you can log different errors in different files, to ignore some of the errors or to save specific errors in a database and send others to a third party service.

Installation

The package can be installed with Composer. Just run this command:

$ composer require iivannov/snitch

Supported Handlers

Currently we support only two handlers:

  • LoggerHandler - accepting PSR LoggerInterface::class, so you can inject any other compatible logger instance.
  • SentryHandler - sends debug data to Sentry service

Any contributions are welcomed :)

Usage

Initialization

We define a new SentryHandler and we tell it that all exceptions other than an \InvalidArgumentException::class will be sent to Sentry service Then we create a new Snitch instance and add the handler.

$handler = new SentryHandler(YOUR_SENTRY_DSN);
$handler->ignore(\InvalidArgumentException::class);
 
$snitch = new Snitch();
$snitch->handler($handler);

Report exceptions

Snitch will check which registered handlers are accepting the given exception and they will log or report it.

try {
    ...
} catch (\Exception $e) {
    $snitch->report($exception, ['foo' => 'bar']);
}

统计信息

  • 总下载量: 20
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-11-10