主頁 > 知識庫 > 淺談Laravel中使用Slack進行異常通知

淺談Laravel中使用Slack進行異常通知

熱門標簽:溫州外呼系統(tǒng)招商 銀行信貸電話機器人 滄州電銷外呼系統(tǒng)價格 上海400客服電話怎么申請 合肥ai電銷機器人費用 手機外呼系統(tǒng)什么原理 400電話個人能不能辦理 凱立德地鐵站地圖標注 天津電銷外呼系統(tǒng)違法嗎

概述

通常,我們可以依靠用戶反饋、經常查看程序日志來發(fā)現(xiàn)程序存在的問題。但這要么不可靠要么不及時,所以下面我們介紹一種比較有效的做法--使用 Slack 通知程序跑出的異常信息。

Slack 是一款即時通信軟件,類似于 QQ,它提供開放的 API,可以調用它向自己團隊中指定的個人或者頻道(Channel)發(fā)送消息,因此用它來進行異常通知是再合適不過的。

安裝 maknz/slack-laravel 包

具體的安裝方法請參考 Github 上的 [readme](https://github.com/maknz/slack-laravel)。

配置

安裝完成后使用 php artisan vendor:publish 生成 config\slack.php 配置文件,然后在.env文件中添加如下三項配置值.

SLACK_ENDPOINT=//slack 終端,即 slack 接口地址

SLACK_CHANNEL=//消息默認接收頻道

SLACK_USERNAME//消息默認接收人

> 當然,也可以直接直接在 config\slack.php 對應配置的默認值而不使用 .env,但并不推薦這樣做。

> 根據實際需要設置 SLACK_CHANNEL 和 SLACK_USERNAME ,二者并不是必須的

調整 AppExceptionsHandler 類的 report 方法

實現(xiàn) Slack 通知異常信息的邏輯。代碼如下:

/**
 
 * Report or log an exception.
 
 *
public function report(Exception $e){
    if ($this->shouldReport($e)) {
        $slackMessage = "\n[Error.{$e->getCode()}] {$e->getMessage()}";
        $slackMessage.= "\n[Line.{$e->getLine()}] {$e->getFile()}";
        $slackMessage.= "\n[Time] ".date('Y-m-d H:i:s');
        try {
            Slack::to(config('slack.channel'))->send($slackMessage);
        } catch (\Exception $eOther) {
            \Log::info($slackMessage);
        }
    }
    return parent::report($e);
}

對于一些可能頻繁出現(xiàn)但又不致命的異常,例如404 NotFoundHttpException,我們可能并不想讓程序通知它。為此,我們只需要在 Aop\Exceptions\Handler 類里的 $dontReort 屬性中加入指定的異常的類型就可以了。

protected $dontReport = [
 
    NotFoundHttpException::class,
 
    // ...
 
];

示例中展示的是對指定的頻道(channel)發(fā)送信息,當然你還可以向指定的人發(fā)送,或者其它更復雜的用法。不過要注意指定的用戶名和頻道是自己 slack 團隊中已經存在的,不然會出錯。

這樣,當程序中出現(xiàn)異常時,運維能在第一時間收到相關的通知信息,方便及時處理了。

以上就是淺談Laravel中使用Slack進行異常通知的詳細內容,更多關于Laravel中使用Slack進行異常通知的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • 如何用Laravel包含你自己的幫助函數
  • 詳解Laravel框架的依賴注入功能
  • php+laravel 掃碼二維碼簽到功能
  • laravel的數據表填充器使用詳解
  • laravel ajax curd 搜索登錄判斷功能的實現(xiàn)
  • Laravel中Kafka的使用詳解
  • laravel使用redis隊列實例講解
  • Laravel的加密解密與哈希實例講解
  • Laravel中10個有用的用法小結
  • 分析五個Laravel Dusk的使用技巧

標簽:七臺河 金華 酒泉 怒江 白城 洛陽 溫州 赤峰

巨人網絡通訊聲明:本文標題《淺談Laravel中使用Slack進行異常通知》,本文關鍵詞  淺談,Laravel,中,使用,Slack,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《淺談Laravel中使用Slack進行異常通知》相關的同類信息!
  • 本頁收集關于淺談Laravel中使用Slack進行異常通知的相關信息資訊供網民參考!
  • 推薦文章