本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。
直接入主题
##第一部分:申请API
####添加机器人
https://telegram.me/botfather
####输入这个/start
####输入机器人名字,图里说错了,其实无所谓的。
####输入token名字
####这个就是你的专属API
了,记清楚了,忘记了可以点击机器人重新获取。
####浏览器输入下面的地址来获取你的ID
和群组ID
,把<your-API>
换成实际的API token
即可
https://api.telegram.org/bot<your-API>/getUpdates
####浏览器会弹出以下信息,如图,我把我的真正ID
删掉了,你们看自己的就行,群组的同理
"message":{"message_id":26,"from":{"id":XXXXX,"is_bot":false,"first_name":"sanxi","language_code":"en"},"chat":{"id":XXXXX,"first_name":"sanxi","type":"private"},"date":1578551346,"text":"1"}}]}
##第二部分:配置依赖环境
####开始配置依赖环境
zabbix in Telegram 的GitHub开源项目地址
####1.安装依赖环境
git clone https://github.com/ableev/Zabbix-in-Telegram.git
yum install python-pip
cd Zabbix-in-Telegram/
pip install -r requirements.txt
####2.复制告警脚本至配置路径
cp zbxtg.py zbxtg_settings.example.py zbxtg_group.py /usr/lib/zabbix/alertscripts/
cd /usr/lib/zabbix/alertscripts/
mv zbxtg_settings.example.py zbxtg_settings.py
####3.修改 zbxtg_settings.py
tg_key = "yoursAPI" #你的telegram API token
zbx_server = "http://youip:port/zabbix/" #zabbix server完整链接
zbx_api_user = "Admin"zbx_api_pass = "zabbix" #zabbix server的账号密码
####4.测试手动推送是否成功
./zbxtg.py "@telegramID" "hello" "test"
#要在@
后加上你在前面浏览器看到的你自己的telegramId
##第三部分:web
端配置
####5.创建监控模板
####6.编辑模板template
####7.创建应用集application
####8.创建监控项item
####创建CPU
的item
,其它的同理
####9.编辑item
,详情见图
####10.创建触发器triggers
####11.编辑触发器,要注意告警消息的等级,这影响到后面的action
。
####12.创建图形界面
####13.创建screen
屏幕
####14.编辑screen
####创建主机,然后在主机的template
选择刚刚创建的模板
####15.创建media type
####16.编辑media
,配置完点击add
添加
####17.编辑用户,添加media
####18.编辑media
,如果没有就创建就行了。
####19.选择media
####20.创建action
来调用脚本
编辑
action
,选择什么样的报警等级触发动作
定义触发后的操作,恢复和更新同理,看需求。
####21.然后可以尝试停止一个服务,看能不能触发action
调用脚本推送到telegram
上了,下图是我推送成功的。