wuhaohui / laravel-exception-notify
Laravel 中异常监控报警通知(Bark、Chanify、钉钉群机器人、Discord、飞书群机器人、邮件、PushDeer、QQ 频道机器人、Server 酱、Slack、Telegram、企业微信群机器人、息知)。
                                    Fund package maintenance!
                                                                            
                                                                                                                                        Wechat
                                                                                    
                                                                
Installs: 4
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
pkg:composer/wuhaohui/laravel-exception-notify
Requires
- php: >=7.2
 - ext-json: *
 - guanguans/notify: ^1.25
 - illuminate/bus: ^5.7 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0
 - illuminate/contracts: ^5.7 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0
 - illuminate/events: ^5.7 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0
 - illuminate/http: ^5.7 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0
 - illuminate/log: ^5.7 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0
 - illuminate/queue: ^5.7 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0
 - illuminate/support: ^5.7 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0
 - symfony/cache: *
 - symfony/rate-limiter: *
 
Requires (Dev)
- brainmaestro/composer-git-hooks: ^2.8 || ^3.0
 - dms/phpunit-arraysubset-asserts: ^0.4.0
 - friendsofphp/php-cs-fixer: ^3.4
 - jetbrains/phpstorm-attributes: ^1.0
 - johnkary/phpunit-speedtrap: ^4.0
 - mockery/mockery: ^1.3
 - nunomaduro/collision: ^4.3 || ^5.0 || ^6.0 || ^7.0
 - nunomaduro/larastan: ^1.0 || ^2.0
 - nyholm/nsa: ^1.3
 - orchestra/testbench: ^5.20 || ^6.0 || ^7.0
 - php-mock/php-mock-phpunit: ^2.6
 - phpbench/phpbench: ^1.1
 - phpstan/extension-installer: ^1.2
 - phpstan/phpstan: ^1.9
 - phpstan/phpstan-deprecation-rules: ^1.1
 - phpstan/phpstan-phpunit: ^1.3
 - phpunit/phpunit: ^8.5 || ^9.5
 - rector/rector: ^0.15.7 || ^0.17.0
 - spatie/phpunit-snapshot-assertions: ^3.0 || ^4.2
 - symfony/var-dumper: ^5.4 || ^6.0
 - vimeo/psalm: ^4.30 || ^5.4
 
This package is auto-updated.
Last update: 2025-10-29 03:26:40 UTC
README
Laravel 中异常监控报警通知(Bark、Chanify、钉钉群机器人、Discord、飞书群机器人、邮件、PushDeer、QQ 频道机器人、Server 酱、Slack、Telegram、企业微信群机器人、息知)。
功能
- 监控发送 laravel 应用异常
 - 支持多种通道(Bark、Chanify、钉钉群机器人、Discord、飞书群机器人、邮件、PushDeer、QQ 频道机器人、Server 酱、Slack、Telegram、企业微信群机器人、息知)
 - 支持扩展自定义通道
 - 支持自定义数据收集器
 - 支持自定义数据转换器
 - 支持通知速率限制(相同异常生产环境默认每 5 分钟通知 1 次)
 
相关项目
环境要求
- PHP >= 7.2
 - laravel >= 5.5
 
安装
composer require guanguans/laravel-exception-notify -vvv
配置
注册服务
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 等信息
配置文件中配置 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 的实例 }); }
测试
composer test
变更日志
请参阅 CHANGELOG 获取最近有关更改的更多信息。
贡献指南
请参阅 CONTRIBUTING 有关详细信息。
安全漏洞
请查看我们的安全政策了解如何报告安全漏洞。
贡献者
鸣谢
协议
MIT 许可证(MIT)。有关更多信息,请参见协议文件。

