亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python利用Nagios增加微信報警通知的功能

 更新時間:2016年02月18日 09:29:07   投稿:mrr  
Nagios是一款開源的免費網(wǎng)絡(luò)監(jiān)視工具,能有效監(jiān)控Windows、Linux和Unix的主機狀態(tài),交換機路由器等網(wǎng)絡(luò)設(shè)置,打印機等,本文給大家介紹Python利用Nagios增加微信報警通知的功能,需要的朋友參考下

Nagios是一款開源的免費網(wǎng)絡(luò)監(jiān)視工具,能有效監(jiān)控Windows、Linux和Unix的主機狀態(tài),交換機路由器等網(wǎng)絡(luò)設(shè)置,打印機等。在系統(tǒng)或服務(wù)狀態(tài)異常時發(fā)出郵件或短信報警第一時間通知網(wǎng)站運維人員,在狀態(tài)恢復(fù)后發(fā)出正常的郵件或短信通知。

Nagios是調(diào)用微信公共平臺的api接口發(fā)送報警郵件。在正式操作之前,有幾個準備工作要做。先安裝nagios,可以使用我提供的nagios一鍵安裝腳本。然后是去微信公共平臺申請一個企業(yè)號,我申請時填的是組織,沒有認證也可以使用。最后登錄公共平臺添加通訊錄,和新建應(yīng)用(例如nagios),記錄應(yīng)用的id后面要用。用戶權(quán)限什么自己設(shè)定。

微信腳本

nagios和微信平臺都準備好之后,接下來下載微信命令腳本。右鍵點擊 下載 ,保存。然后上傳到nagios服務(wù)器,例如/usr/local/nagios/python/weixin目錄,設(shè)置文件權(quán)限為可執(zhí)行。在/usr/local/nagios/python/weixin目錄新建config.py文件,添加如下配置。

#coding:utf-8
CorpID='xxxxx'
Secret='xxxxxxxxxxxxxxxxx'
DEBUG=0
ToUser='sijitao.net'
AgentId=1

其中CorpID和Secret這兩個可以通過登錄微信公共平臺,打開添加的應(yīng)用(例如nagios)獲取。

微信腳本命令傳遞的參數(shù)通過“-@@-”符號來分割,詳細說明可以參考我的github地址:https://github.com/zhangnq/nagios/tree/master/weixin

Nagios配置

下面就是nagios上的常規(guī)配置。

commands.cfg命令文件中添加weixin命令:

define command{
command_name notify-host-by-weixin
command_line /usr/local/nagios/python/weixin/NotifyByWeixin.py "host-@@-$NOTIFICATIONTYPE$-@@-$HOSTNAME$-@@-$HOSTSTATE$-@@-$HOSTADDRESS$-@@-$HOSTOUTPUT$-@@-$CONTACTALIAS$"
}
define command{
command_name notify-service-by-weixin
command_line /usr/local/nagios/python/weixin/NotifyByWeixin.py "service-@@-$NOTIFICATIONTYPE$-@@-$SERVICEDESC$-@@-$HOSTALIAS$-@@-$HOSTADDRESS$-@@-$SERVICESTATE$-@@-$SERVICEOUTPUT$-@@-$CONTACTALIAS$"
}

templates.cfg模板文件中添加聯(lián)系人模板:

define contact{
name weixin-contact
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r,f,s
host_notification_options d,u,r,f,s
service_notification_commands notify-service-by-weixin
host_notification_commands notify-host-by-weixin
register 0
}

contacts.cfg聯(lián)系人中添加微信通知聯(lián)系人,這里alias名字要和微信公共平臺通訊錄中名字帳號一樣才會發(fā)送成功。

define contact{
contact_name zhangnq-weixin
use weixin-contact
alias zhangnq
email admin@sijitao.net
}

最后在配置service的時候添加zhangnq-weixin這個聯(lián)系人后就可以通過微信發(fā)送報警郵件了。

 

關(guān)于小編給大家分享的Python利用Nagios增加微信報警通知的功能就給大家介紹這么多,希望對大家有所幫助。

相關(guān)文章

最新評論