Yii 2 的日志管理提供了多個日志收集工具:
-
yii\log\DbTarget
: 使用數(shù)據(jù)庫收集日志 -
yii\log\EmailTarget
: 使用郵件收集日志 -
yii\log\SyslogTarget
: 使用系統(tǒng)的 Syslog 收集日志
上面的幾個工具除了郵件外焚挠,都不能及時的通知到運(yùn)維人員或開發(fā)者挣菲。
好在釘釘提供了聊天機(jī)器人功能晰绎,使用自定義機(jī)器人的 webhook 我們可以將錯誤日志及時的推送到相關(guān)人員伊约。
獲取釘釘聊天機(jī)器人 Access Token
根據(jù)釘釘官方文檔為群聊添加自定義機(jī)器人 https://open-doc.dingtalk.com/docs/doc.htm?&treeId=257&articleId=105735&docType=1省核,得到 Webhook 地址https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxx
, 聊天機(jī)器人 Access Token 即?access_token=
后面的內(nèi)容。配置 Yii 2 應(yīng)用
在配置文件中修改組件log
:
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
'targets' => [
// ...
[
'class' => 'iPaya\DingTalk\Log\DingTalkTarget',
'levels' => ['error'],
'robot' => [
'accessToken' => '<你的釘釘聊天機(jī)器人 Access Token>'
]
],
// ...
],
],
此時當(dāng) Yii 2 程序出現(xiàn) error
級別的錯誤時瓦糟,釘釘群就會收到機(jī)器人發(fā)送的錯誤日志饱亿。