laravel-exception-notify – 反对多种通道的 laravel 异样告诉 (Bark、Chanify、钉钉群机器人、飞书群机器人、邮件、Server 酱、企业微信群机器人、息知)。
性能 (2.x 重构版本)
- 监控发送 laravel 利用异样
- 反对多种通道 (Bark、Chanify、钉钉群机器人、飞书群机器人、邮件、Server 酱、企业微信群机器人、息知)
- 反对扩大自定义通道
- 反对自定义数据收集器
- 反对自定义数据转换器
装置
$ composer require guanguans/laravel-exception-notify:^2.0 -v
配置
注册服务
laravel
$ php artisan vendor:publish --provider="Guanguans\\LaravelExceptionNotify\\ExceptionNotifyServiceProvider"
lumen
将以下代码段增加到 bootstrap/app.php
文件中的 Register Service Providers
局部下:
$app->register(\Guanguans\LaravelExceptionNotify\ExceptionNotifyServiceProvider::class);
$app->boot(\Guanguans\LaravelExceptionNotify\ExceptionNotifyServiceProvider::class);
申请相干通道 token 等信息
- Bark
- Chanify
- 钉钉群机器人
- 飞书群机器人
- Server 酱
- 企业微信群机器人
- 息知
配置文件中配置 token 等信息
config/exception-notify.php
.env
文件中配置
EXCEPTION_NOTIFY_DEFAULT_CHANNEL=dingTalk
EXCEPTION_NOTIFY_DINGTALK_KEYWORD=keyword
EXCEPTION_NOTIFY_DINGTALK_TOKEN=c44fec1ddaa8a833156efb77b7865d62ae13775418030d94d
EXCEPTION_NOTIFY_DINGTALK_SECRET=SECc32bb7345c0f73da2b9786f0f7dd5083bd768a29b82
应用
app/Exceptions/Handler.php
的 report
办法中增加
public function report(Exception $e)
{
// 默认通道
\ExceptionNotifier::reportIf($this->shouldReport($e), $e);
// 指定通道
\ExceptionNotifier::onChannel('dingTalk', 'mail')->reportIf($this->shouldReport($e), $e);
parent::report($e);
}
告诉后果
扩大自定义通道
app/Providers/AppServiceProvider.php
的 boot
办法中增加
public function boot()
{
// 扩大自定义通道
\ExceptionNotifier::extend('YourChannel', function (\Illuminate\Contracts\Container\Container $container){// 返回 \Guanguans\LaravelExceptionNotify\Contracts\Channel 的实例});
}