zabbix 自定义参数及邮件报警

一. 自定义参数

  1. 在zabbix-agent主机上根据命令定义参数
    例:查看当前系统登录用户数
    uptime | awk -F “ ” ‘{print $5}’ //根据shell命令查找出当前登录用户数
    vi /etc/zabbix/zabbix_agentd.d/testparam.conf //新建参数配置文件testparam.conf
    UserParameter=login-user,uptime | awk -F " " '{print $5}' //在配置文件里新建参数login-user
    /etc/init.d/zabbix_agent restart //重启zabbix客户端使配置生效
  2. 在zabbix-server主机上测试
    例:查看zabbix-agent主机登录用户数是否可获取到
    zabbix_get -s (192.168.10.12) -k login-user // -s zabbix_agent主机IP -k 设置的参数
    二. 自定义监控项、触发器、图形
  3. 自定义监控项
    zabbix 自定义参数及邮件报警
    主要是键值采用在zabbix-agent主机上设置的参数
  4. 自定义触发器
    zabbix 自定义参数及邮件报警
  5. 自定义图形
    zabbix 自定义参数及邮件报警
    三. 自定义邮件报警
  6. 安装简单邮件发送工具mailx
    yum -y install mailx //在线安装mailx
    vim /etc/mail.rc
    set [email protected] //163注册的个人邮箱,用于zabbi服务端转发邮件到指定邮箱
    set smtp=smtp.163.com //填写163发送邮箱服务器地址smtp
    set smtp-auth-user= [email protected] //163个人邮箱用户
    set smtp-auth-password=123456 //163个人邮箱密码
    set smtp-auth=login //登录
    echo "测试发送邮件" | mail -s "this is a test" [email protected] //测试邮件是否发送成功
  7. 编写邮件发送脚本
    查看zabbix_server.conf文件确定脚本默认存放位置
    vim /etc/zabbix/zabbix_server.conf
    AlertScriptsPath=/usr/lib/zabbix/alertscripts //由于是yum安装,默认脚本路径在此
    cd /usr/lib/zabbix/alertscripts/ //进入zabbix默认存放脚本路径
    vim sendmail.sh //编写发送邮件脚本
    shell脚本内容:
    #!/bin/bash
    messages=echo $3 | tr '\r\n' '\n'
    subject=echo $2 | tr '\r\n' '\n'
    echo "${messages}" | mail -s "${subject}" $1 >>/tmp/sendmail.log 2>&1
    注:$1,$2,$3 三个参数分别表示:收件人邮箱,邮件名主题,邮件内容
    chown zabbix:zabbix sendmail.sh

    1. zabbix服务器设置报警媒介类型
      再添加以下3个参数,分别对应脚本需要的3个参数:收件人地址、主题、详细内容:
      {ALERT.SENDTO}
      {ALERT.SUBJECT}
      {ALERT.MESSAGE}
      zabbix 自定义参数及邮件报警
    2. 用户报警媒介设置
      zabbix 自定义参数及邮件报警
    3. 动作设置
      zabbix 自定义参数及邮件报警
      操作:
      默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
      默认信息:
      告警主机IP地址:{HOST.CONN}
      告警主机:{HOSTNAME1}
      告警时间:{EVENT.DATE} {EVENT.TIME}
      告警等级:{TRIGGER.SEVERITY}
      告警信息: {TRIGGER.NAME}
      告警项目:{TRIGGER.KEY1}
      问题详情:{ITEM.NAME}:{ITEM.VALUE}
      当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

      恢复操作:
      默认接收人:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
      恢复信息:
      告警主机IP地址:{HOST.CONN}
      告警主机:{HOSTNAME1}
      告警时间:{EVENT.DATE} {EVENT.TIME}
      告警等级:{TRIGGER.SEVERITY}
      告警信息: {TRIGGER.NAME}
      告警项目:{TRIGGER.KEY1}
      问题详情:{ITEM.NAME}:{ITEM.VALUE}
      当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

猜你喜欢

转载自blog.51cto.com/3077881/2124568
今日推荐