修正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/9884910.html

时间: 2024-10-13 00:53:49

修正Percona Monitoring Plugins for Zabbix的一处脚本Bug的相关文章

Percona Monitoring Plugins for Zabbix 安装和配置

配置环境: centos 6.6 zabbix server and agent:2.4.7 Percona Monitoring Plugins for Zabbix:1.1 前置条件 :zabbix agent已经安装 :   若用源码安装 请使用如下参数编译 configure --prefix=/ --enable-agent 1 安装依赖包php php-mysql yum install -y php php-mysql 2 安装插件 wget https://www.percona

Zabbix 中使用 Percona Monitoring Plugins 监控 MySQL

Zabbix 中使用 Percona Monitoring Plugins 监控 MySQL 1.安装zabbix agent [[email protected] ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-agent-3.2.0-1.el7.x86_64.rpm [[email protected] ~]# yum install zabbix-agent 2.修改配置 [[email protect

Zabbix 3 中使用 Percona Monitoring Plugins 监控 MySQL

1.安装监控插件 wget https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.7/binary/redhat/6/x86_64/percona-zabbix-templates-1.1.7-2.noarch.rpm rpm -ivh percona-zabbix-templates-1.1.7-2.noarch.rpm yum install percona-za

用percona monitoring plugins 监控mysql

下载:http://www.percona.com/redir/downloads/percona-monitoring-plugins/1.1.1/percona-zabbix-templates-1.1.1-1.noarch.rpm 安装:rpm -ivh percona-zabbix-templates-1.1.1-1.noarch.rpm 安装php php-mysql 将定义key的子配置复制到/usr/local/zabbix/zabbix_agentd.conf.d/下 cp /v

关于 percona monitoring plugins插件报slave is stoped on ip地址

思路:肯定是某个item触发了触发器 去看触发器,找到 slave is stoped,如下图 看到键是mysql.running-slave ,然后去定义key的文件中查看该键对应的脚本,修改脚本.got it.

利用Percona monitoring for zabbix监控MySQL

系统要求 被监控的主机及mysql监控账号,zabbix agent 2.0或以上(最好与zabbix-server版本相同),php, php-mysql(php版本没有限制,经测试5.3是可以的.最好版本不要太低),Percona Monitoring Plugins for Zabbix 安装zabbix agent https://www.cnblogs.com/fishparadise/p/9067471.html 安装percona plugin percona plugin需要ph

Percona Monitoring and Management (PMM) 监控MongoDB

Percona Monitoring and Management (PMM) 监控MongoDB 1. Percona监控和管理概述 1.1 Percona监控和管理架构 1.2 PMM Client 1.3 PMM Server 2. 安装MongoDB 2.1 配置Percona yum源 3. 部署Percona监控和管理 3.1 yum安装Docker 3.2 创建一个PMM数据容器 3.3 创建并运行PMM服务器容器 3.4 安装PMM客户端 3.5 pmm server与pmm c

Zabbix自定义监控脚本,显示权限不足

最近在配置zabbix监控mysql的自定监控项的时候,使用zabbix服务器测试时,报这个错. 我就查看了agent端zabbix_agentd.log和Server端的日志,然并卵什么都木有发现.后来查看Server端发现我用的是zabbix用户,而agent端的/usr/local/zabbix的所有者是root,问题就出现在这里,将zabbix配置目录的所有者改为了zabbix,给脚本加上了可执行权限(重点是这),就可以了.(其实将目录改为zabbix有点多余,但是强迫症犯了)

Zabbix如何设置脚本告警

设置告警脚本的路径 # vim /etc/zabbix/zabbix_server.confAlertScriptsPath=/usr/lib/zabbix/alertscripts 创建脚本 在这里,仅以一个简单脚本进行测试 # cat zabbix_syslog.py #!/usr/bin/python import sys,time print sys.argv now=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()) f= open(