zabbix 調用飛書發送消息


先感謝參考對象: https://blog.csdn.net/fengwuxichen/article/details/90406489

              https://blog.51cto.com/12970189/2472377?source=dra

以下是我的操作:

在 zabbix 所在服務器,安裝python依賴

yum install python-pip  # 已經有了python2.7.5
pip install --upgrade pip

pip install urllib3
pip install requests

找到 zabbix 腳本目錄,我的在 /usr/lib/zabbix/alertscripts

添加文件,feishu_send.py  (得益於開發同事寫好了接口url,我只要按要求傳遞消息體就可以了, 這里傳了工號和內容)

 

 

  python 版本:

#!/usr/bin/python
# -*- coding: utf-8 -*-

import requests
import json
import sys
import os

headers = {'Content-Type': 'application/json;charset=utf-8'}

api_url = "http://192.168.33.21:8099/api/feishu/send"

def msg(emp_no, text):
    json_text= {
    "employee_no":emp_no,
    "msg_type": "text",
    "content": {"text": text}
    }

    print(requests.post(api_url,json.dumps(json_text),headers=headers).content)


if __name__ == '__main__':
   emp_no = sys.argv[1]
   text = sys.argv[2]
   msg(emp_no, text)

 

或者使用 curl 版本: (其實就是curl 命令,拼了2個位置參數)

#!/bin/bash

curl http://192.168.33.21:8099/api/feishu/send -X POST -d '{"employee_no":"'$1'","msg_type":"text","content":{"text":"'$2'"}}' --header "Content-Type: application/json"

 

保存文件,並給予執行權限 chmod 755 feishu_send.py

手動執行測試一下: ./feishu_send.py 11220033 testtext

執行成功,飛書收到消息。

接下來,配置zabbix, 先添加,報警媒介類型,使用上面的腳本,並填好參數(是zabbix中的參數)

 

 

給用戶添加報警媒介。管理,用戶,點擊一個用戶,報警媒介,添加。類型選上圖創建的,收件上則對應上圖的第一個參數(這里是工號)

 

 

由於報警可能要發給幾個人,所以創建個用戶群組。把用戶添加進來即可。

 

 

 

接下來添加動作。 配置,動作,事件源里選觸發器,創建動作。   填寫名稱,新的觸發條件選觸發器名稱,然后點擊操作:

 

 

在操作界面,其它不用改。點一下操作欄,新的, 

 

 操作細節,如下圖,最后點添加。

 

 

之后的 恢復操作,更新操作  這2項,依照上面的同樣設置即可。最后點擊更新。

 

 

最后,測試一下,讓 zabbix 監控的對象出個錯誤,看飛書能否收到消息。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM