此文是Linux部署server用shell實現飛書告警,windows部署server用bat實現飛書告警點擊此處
1、在群聊中添加機器人
進入群聊,打開群設置,找到群機器人,並點擊添加機器人。選擇自定義機器人加入群聊。

添加該機器人進群,設置機器人頭像、名稱和描述(隨便寫就可以了),然后點擊下一步。

2、配置webhook,可根據需求選擇一種及以上安全設置的方式(先不選,成功后再根據自己實際場景調整),復制並保存此頁面的參數,最后點擊完成。

使用機器人發送消息
請保管好 webhook 地址。 不要公布在 Github、博客等可公開查閱的網站上。地址泄露后可能被惡意調用發送垃圾信息
3、新建/home/testmsg.sh文件,此處目錄和文件名稱是為測試方便,自己可以根據實際場景自定義,內容如下
#!/bin/bash content=$1 content=${content//\ /} content=${content//\"/} time3=$(date "+%H:%M:%S") content="$time3,$content" echo "warn content is : $content" #飛書機器人webhook 地址 api=https://open.feishu.cn/open-apis/bot/v2/hook/58298exxxxxxxxxxxxxxxxxxxxxx curl -X POST \ $api \ -H 'Content-Type: application/json' \ -d '{ "msg_type": "post", "content": { "post": { "zh_cn": { "title": "WGCLOUD告警", "content": [ [ { "tag": "text", "text": "'$content'" } ], [ ] ] } } } }'
記得給testmsg.sh文件添加可執行權限
chmod +x testmsg.sh
測試過程中,將xxxxxxxx那行內容,替換為自己的實際webhook地址
sh /home/testmsg.sh 測試告警
4、然后在/server/config/application.yml里,修改配置項,然后重啟server生效
#告警腳本文件的完整路徑,注意是完整的路徑,可以為空,參考:/server/template/sendMsg.sh
warnScript: /home/testmsg.sh
注意告警腳本文件需要填寫完整的路徑
5、注意windows編輯shell腳本后,上傳到linux下執行可能出現\r錯誤

因為Windows系統中的換行符是**\n\r**,Linux系統中的換行符是**\n**,因此需要將**\r**替換為空白。
運行如下命令即可
sed -i 's/\r$//' /home/testmsg.sh
6、關於告警內容沒有空格的說明
因為微信發送的消息,如果有空格,會截斷,空格后內容不會發送顯示,因此將空格替換為空,shell腳本中的content=${content//\ /}就是將空格替換為空,
如果想顯示空格,可以將content=${content//\ /}這行注釋掉,然后修改server/config/application.yml文件中的配置項warnToUnicode改為yes,如下
#是否將告警內容轉為unicode,yes是,no否,在windows執行告警腳本時,一般需要轉碼,否則接受到會是亂碼
warnToUnicode: yes
修改完后,重啟下server
