zoukankan      html  css  js  c++  java
  • zabbix 自定义mysql监控

    一、配置zabbix-agent

    编辑 /etc/zabbix/zabbix_agentd.conf文件  增加如下两个配置

    1.vim /etc/zabbix/zabbix_agentd.conf

    UnsafeUserParameters=1
    Include=/etc/zabbix/zabbix_agentd.d/*.conf
    

     2.新增配置文件

    [root@steven /etc/zabbix] # cat zabbix_agentd.d/zabbix_mysql_template.conf
    UserParameter=mysql.status[*],/bin/bash /data/app/scripts/monitor/zabbix-mysql-template.sh $1 $2
    

    二、编写脚本

    vim /data/app/scripts/monitor/zabbix-mysql-template.sh

    #!/bin/bash
    # author: steven
    
    USER="xxxr"
    PASSWD="xxxxx"
    PORT="$2"
    echo $PORT
    
    
    if [ -z "$2" ];then
        socket="--socket=/data/appData/mysql/mysql.sock"
    else
        socket="--socket=/data/appData/mysql-$PORT/mysql.sock"
    fi
    
    if [ -f /data/app/mysql-3307/bin/mysqladmin ];then
        MYSQL_CONN="/data/app/mysql-3307/bin/mysqladmin -u$USER -p$PASSWD $socket -u$USER"
    else
        echo "Not Found Command 'mysqladmin'"
        exit
    fi
    
    case "$1" in
      Uptime)
        result=`${MYSQL_CONN} status|cut -f2 -d":"|cut -f1 -d"T"`
        echo $result
      ;;
      Com_update)
        result=`${MYSQL_CONN} extended-status|grep -w "Com_update"|cut -d"|" -f3`
        echo $result
      ;;
      Slow_queries)
        result=`${MYSQL_CONN} status|cut -f5 -d":"|cut -f1 -d"O"`
        echo $result
      ;;
      Com_select)
        result=`${MYSQL_CONN} extended-status|grep -w "Com_select"|cut -d"|" -f3`
        echo $result
      ;;
      Com_rollback)
        result=`${MYSQL_CONN} extended-status|grep -w "Com_rollback"|cut -d"|" -f3`
        echo $result
      ;;
      Questions)
        result=`${MYSQL_CONN} status|cut -f4 -d":"|cut -f1 -d"S"`
        echo $result
      ;;
      Com_insert)
        result=`${MYSQL_CONN} extended-status|grep -w "Com_insert"|cut -d"|" -f3`
        echo $result
      ;;
      Com_delete)
        result=`${MYSQL_CONN} extended-status|grep -w "Com_delete"|cut -d"|" -f3`
        echo $result
      ;;
      Com_commit)
        result=`${MYSQL_CONN} extended-status|grep -w "Com_commit"|cut -d"|" -f3`
        echo $result
      ;;
      Bytes_sent)
        result=`${MYSQL_CONN} extended-status|grep -w "Bytes_sent"|cut -d"|" -f3`
        echo $result
      ;;
      Bytes_received)
        result=`${MYSQL_CONN} extended-status|grep -w "Bytes_received"|cut -d"|" -f3`
    echo $result
      ;;
      Com_begin)
        result=`${MYSQL_CONN} extended-status|grep -w "Com_begin"|cut -d"|" -f3`
        echo $result
      ;;
      ping)
        result=`${MYSQL_CONN} ping|grep -c alive`
        echo $result
      ;;
      *)
        echo "error parameter"
      ;;
    esac
    

    三、zabbix 前端创建监控项

    例如:ping

    键值对地方写  mysql.status[ping]

  • 相关阅读:
    (转载)SAPI 包含sphelper.h编译错误解决方案
    C++11标准的智能指针、野指针、内存泄露的理解(日后还会补充,先浅谈自己的理解)
    504. Base 7(LeetCode)
    242. Valid Anagram(LeetCode)
    169. Majority Element(LeetCode)
    100. Same Tree(LeetCode)
    171. Excel Sheet Column Number(LeetCode)
    168. Excel Sheet Column Title(LeetCode)
    122.Best Time to Buy and Sell Stock II(LeetCode)
    404. Sum of Left Leaves(LeetCode)
  • 原文地址:https://www.cnblogs.com/sunshine-long/p/10831867.html
Copyright © 2011-2022 走看看