当前位置: 首页 > 后端技术 > PHP

支持多通道的Laravel异常监控通知组件

时间:2023-03-29 19:55:05 PHP

laravel-exception-notify-支持多渠道的laravel异常通知(Bark、Chanify、钉钉群机器人、飞书群机器人、邮件、服务器酱、企业微信群机器人和信息)。功能(2.x重构版)监听并发送Laravel应用异常支持多渠道(Bark、Chanify、钉钉群机器人、飞书群机器人、邮箱、服酱、企业微信群机器人、资讯知)支持扩展自定义Channel支持自定义数据收集器支持自定义数据转换器安装$composerrequireguanguans/laravel-exception-notify:^2.0-v配置注册服务laravel$phpartisanvendor:publish--provider="Guangans\\LaravelExceptionNotify\\ExceptionNotifyServiceProvider"lumen添加以下代码片段注册服务提供商部分下的bootstrap/app.php文件:ApplyforrelevantchanneltokenandotherinformationBarkChanifyDingdinggrouprobotFeishugrouprobotServerSauceenterpriseWeChatgrouprobotinformationconfigurationfileconfiguretokenandotherinformationconfig/exception-notify.php.envfileconfigurationEXCEPTION_NOTIFY_DEFAULT_CHANNEL=dingTalkEXCEPTION_NOTIFY_DINGTALK_KEYWORD=keywordEXCEPTION_NOTIFY_DINGTALK_TOKEN=c44fec1ddaa8a833156efb77b7865d62ae13775418030d94dEXCEPTION_NOTIFY_DINGTALK_SECRET=SECc32bb7345c0f73da2b9786f0f7dd5083bd768a29b82使用app/Exceptions/Handler.php的report方法添加publicfunctionreport(Exception$e){//默认channel\ExceptionNotifier::reportIf($this->shouldReport($e),$e);//指定通道\ExceptionNotifier::onChannel('dingTalk','mail')->reportIf($this->shouldReport($e),$e);parent::report($e);}通知结果扩展自定义添加publicfunctionboot(){在通道的boot方法中app/Providers/AppServiceProvider.php//扩展自定义通道\ExceptionNotifier::extend('YourChannel',function(\Illuminate\Contracts\Container\Container$container){//返回一个\Guangans\LaravelExceptionNotify\Contracts\Channel的实例});}