【故障案例】一个Zabbix5.0 与Percona监控数据库的故障-ERROR: run the command manually to investigate the problem

背景

  • 早上有个,刚刚入职的小伙伴,找李导提问,说Zabbix监控MySQL要用percona
  • 于是有了下面的故障
  • 故障环境是: CentOS 7.6,Zabbix是5.0
  • OK, Let's start .

流程

  • zabbix环境是OK的,目前主要问题是
  • 运行percona脚本的时候报错
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
ERROR: run the command manually to investigate the problem: /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host 127.0.0.1 --items gg
  • 但是直接执行里面的php脚本是不报错的
/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host 127.0.0.1 --items gg

解决

  • 定位问题,在脚本上面继续排查
  • 问题为php生产的临时文件多个数字(随机)
  • 脚本中并没有对应修改,

cat  /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh 
#!/bin/sh
# The wrapper for Cacti PHP script.
# It runs the script every 5 min. and parses the cache file on each following run.
# Version: 1.1.8
#
# This program is part of Percona Monitoring Plugins
# License: GPL License (see COPYING)
# Copyright: 2018 Percona
# Authors: Roman Vynar

ITEM=$1
HOST=127.0.0.1
DIR=`dirname $0`
CMD="/usr/bin/php -q $DIR/ss_get_mysql_stats.php --host $HOST --items gg"
CACHEFILE="/tmp/${HOST}-mysql_cacti_stats.txt"

if [ "$ITEM" = "running-slave" ]; then
    # Check for running slave
    RES=`HOME=~zabbix mysql -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','`
    if [ "$RES" = " Yes, Yes," ]; then
        echo 1
    else
        echo 0
    fi
    exit
elif [ -e ${CACHEFILE}* ]; then
    # Check and run the script
    TIMEFLM=`stat -c %Y ${CACHEFILE}*`
    TIMENOW=`date +%s`
    if [ `expr $TIMENOW - $TIMEFLM` -gt 300 ]; then
        rm -f $CACHEFILE
        $CMD 2>&1 > /dev/null
    fi
else
    $CMD 2>&1 > /dev/null
fi

# Parse cache file
if [ -e ${CACHEFILE}* ]; then
    cat ${CACHEFILE}* | sed 's/ /\n/g; s/-1/0/g'| grep $ITEM | awk -F: '{print $2}'
else
    echo "ERROR: run the command manually to investigate the problem: $CMD"
fi

总结

  • 平时多多练习下shell编程,对于这种故障难度不大.
  • 有各种问题欢迎留言与交流
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • percona zabbix 功能原理 percona zabbix 是percona 下的一个用于zabbix监...
    大大的眼睛py阅读 260评论 0 0
  • 监控服务概述 1、实时查看服务状态2、可以发送报警信息(邮件报警、短信报警、电话报警、微信报警、值班(大屏幕)报警...
    酷酷的伟阅读 1,676评论 0 3
  • 第一章 监控知识基本概述 1.为什么要使用监控 1.对系统不间断实时监控 2.实时反馈系统当前状态 3.保证服务可...
    Explorer_z阅读 848评论 0 1
  • 作者:吴兆松(网名:itnihao) “他始终坚信,技术的积累只是时间问题,解决问题的思路和思想高于具体的技术细节...
    清汤白菜郭先生阅读 1,646评论 0 1
  • 1.什么是监控 2.为什么要做监控 系统为什么要做监控:监控是整个运维乃至整个产品生命周期中最重要的一环.事前及时...
    Gq赵阅读 1,029评论 0 0