身為一個負責的工程師,當系統有錯誤的時候,總是想收到即時推播訊息該怎麼做?
上一篇有提過 LOG_CHANEL,最簡單的方式是可以把它改成 slack。
以下介紹怎麼樣讓自己接收到各種通知。
建立新專案
https://api.slack.com/messaging/webhooks
設定專案名稱和選擇 slack workspace
開啟傳入Webook
設定好後進入創好的專案,選擇 Feature > Incoming Webhooks,開啟 Incoming Webhooks。
用 curl 測試一下你的 slack workspace 是否有通知。
在 terminal 貼上 Sample curl request。
curl -X POST -H 'Content-type: application/json' --data '{"text":"Hello, World!"}' https://hooks.slack.com/your-webwook-service-path
設定 Laravel Config
config/logging.php
'channels' => ['single', 'slack'],
'ignore_exceptions' => false,
],
//...
'slack' => [
'driver' => 'slack',
'url' => env('SLACK_URL'),
'username' => 'Laravel Log',
'emoji' => ':boom:',
'level' => env('LOG_LEVEL', 'critical'),
],
修改 .env
LOG_LEVEL=debug # 改到所需級別
SAIL_XDEBUG_MODE=develop,debug
SLACK_URL=https://hooks.slack.com/your-webwook-service-path
Hello Bug
Log::stack(['single', 'slack'])->warning('Something happened!');