zoukankan      html  css  js  c++  java
  • 修正Percona Monitoring Plugins for Zabbix的一处脚本Bug

    今天小试了一把Percona Monitoring Plugins for Zabbix模板,自己辛辛苦苦写的那一大堆Python脚本,貌似用这个模板全都覆盖到了。
    但是,我也发现最新的版本percona-monitoring-plugins_1.1.8也还是存在一个问题,那就是用于Mysql Replication的Slave Running和Slave Stopped监控项的数据不正确(一般情况下,两项数据均维持在0)。
    经检查相关模板的脚本文件ss_get_mysql_stats.php,发现用于获取Slave Running和Slave Stopped监控项的脚本逻辑有问题。

    相关脚本内容为:

             $status['slave_lag']        = $row['seconds_behind_master'];
             ......
             $status['slave_running'] = ($row['slave_sql_running'] == 'Yes')
                ? $status['slave_lag'] : 0;
             $status['slave_stopped'] = ($row['slave_sql_running'] == 'Yes')
                ? 0 : $status['slave_lag'];

    可见当slave_sql_running为Yes时,slave_running的取值是seconds_behind_master,slave_stopped的取值是0。
    当slave_sql_running为No时,slave_running的取值是0,slave_stopped的取值是seconds_behind_master。
    这里我将脚本中$status['slave_lag']更改为了1:

             $status['slave_lag']        = $row['seconds_behind_master'];
             ......
             $status['slave_running'] = ($row['slave_sql_running'] == 'Yes')
                ? 1 : 0;
             $status['slave_stopped'] = ($row['slave_sql_running'] == 'Yes')
                ? 0 : 1;

    修改后监控数据正常了。

    本文地址:https://www.cnblogs.com/ajiangg/p/9968990.html

  • 相关阅读:
    线程---JDK查看线程
    如何处理js的跨域问题
    每日思考(2019/12/31)
    每日思考(2019/12/30)
    每日思考(2019/12/29)
    每日思考(2019/12/28)
    每日思考(2019/12/27)
    每日思考(2019/12/26)
    每日思考(2019/12/25)
    每日思考(2019/12/24)
  • 原文地址:https://www.cnblogs.com/ajiangg/p/9968990.html
Copyright © 2011-2022 走看看