zabbix 添加 微信、邮件 媒介详解

1:zabbix 添加 微信、邮件 媒介。

 1.2:发送告警邮件    
     1:一次完整的监控流程可以简单描述为:
         Host Groups (设备组) ->Hosts (设备) -> template (监控模板)->Applications (监控项组) ->Items (监控项) ->Triggers
        (触发器)->Actions(告警动作)->Medias(告警方式)->User Groups(用户组)->Users(用户)
                                                                                  
    2: 告警动作: 
                   实质:把触发器的报警信息发送给用户 
             用到的对象:用户 、触发器、发送的脚本                                           
             调用脚本传参:用户的邮箱、告警触发器名称、 告警触发器详细信息 
                                                                                                                     
     3: 内部实现机制伪代码:                                                                  
                      for user  in  users                                                
                     call sendmail.py  user.email , trigger_name  , trigger_message 

     4:佐证:发送脚本打印的日志内容【向二个人发送】。 
              XXX@sina.com PROBLEM: Zabbix agent on Zabbix server is unreachable for 5 minutes {"hostName":"Zabbix server","triggerId":"   .......
              
              XXXX@162.com PROBLEM: Zabbix agent on Zabbix server is unreachable for 5 minutes {"hostName":"Zabbix server","triggerId":" .......

     5:创建邮件告警发送配置步骤
          1: 创建触发器或模板自带的
          2:   创建发送python脚本 
                      sendmail.txt
               1:脚本放在:   /usr/local/zabbix/alertscripts   
               2: 脚本所有者 :chown zabbix:zabbix sendmail.py 
         3: 配置告警发送类型 
         4: 创建用户组 用户 
         5: 创建action 【底层代码实现实质 是把 脚本 用户 触发器 “组装起来”,即 三个对象即3张表 建立关联】  

 1.2:发送告警微信

      1:我们要准备这些东西:
               1:一个微信企业号
               2:企业号已经被部门成员关注【部门、成员】
               3:企业号里有一个可以发消息的应用
               4:一个授权管理员,可以使用该应用给成员发消息   
          详细配置文案:MY_Zabbix 微信报警配置文档.doc

    2:我们要取到这些信息:
         1:成员账号
         2:组织部门ID
         3:应用ID
         4:CropID 【管理员公司id】
         5:Secret 【管理员公司密钥】
       注意【access_token 2分钟变更一次,所以要通过 4、5 动态获取; 只有获取access_token, 才可以调用 微信企业号发送消息接口,就像古代的过关文书一样,没有的话只能像关云长一样过关斩将了,也就是黑客攻击。 前三个参数是调用接口时发送消息文本时用到的,用人家手软,总的按照人家的规范来。】   

    3:微信发送脚本编写思路
        a)将corpID、secret拼到取token URL中,获取access_token。
            获取access_token的URL为:
            https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=id&corpsecret=secrect

      b)将取得的access_token拼到发送消息URL中,发送消息。
           发送消息的URL为:
           https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=access_token 
   
    4:微信发送python脚本
                   sendwechat.txt
     5:创建微信报警发送配置步骤
           同上 邮件报警发送配置。

本文转载自:http://blog.itpub.net/30109892/viewspace-1815126/

posted @ 2018-06-10 14:09  漠漠颜  阅读(367)  评论(0编辑  收藏  举报