请选择 进入手机版 | 继续访问电脑版

IT运维管理,ITIL,ITSS,ITSM,ISO20000-ITIL先锋论坛

 找回密码
 微信、QQ、手机号一键注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

艾拓先锋
搜索
查看: 491|回复: 0

[Zabbix专区] MySQL监控:怎样在zabbix上自定义key

[复制链接]
来自- 湖南娄底

参加活动:0

组织活动:12

发表于 2017-9-3 10:04:53 | 显示全部楼层 |阅读模式 来自- 湖南娄底
1.png

如何在zabbix中自定义key,并使用它。
Zabbix是一个开源的,免费的监控工具。它有很多自带的默认的监控选项。但是有时候,自带的监控选项是不够用的。这个时候,就需要自己自定义监控选项。我自己写了几个监控选项,分别用来监控mysql的状态,mysql主从复制的状态,mysql主从复制的时间差。
1、 打开zabbix agent的配置文件,在文件的末尾添加以下语句,如下图:
  • UnsafeUserParameters=1  
  • //这个值默认是为0,改为1表示启用自定义key
  • UserParameter=mysql.ping,netstat -an|find /i /c "3308"
  • //自定义key为mysql.ping,这个key的值从命令netstat -an|find /i /c "3308"获取
  • UserParameter=mysql.slavetime,C:\Zabbix\userdfscrpts\slaveTime.bat
  • //自定义key为mysql. slavetime,脚本C:\Zabbix\userdfscrpts\slaveTime.bat输出的值就传递到mysql. slavetime中去。
  • UserParameter=mysql.slavestatus,C:\Zabbix\userdfscrpts\slaveStatus.bat
  • //自定义key为mysql.slavestatus,脚本C:\Zabbix\userdfscrpts\slaveStatus.bat输出的值就传递到mysql. slavestatus中去。


1.png
2.png


2、 脚本中的内容如下:
  • (1) C:\Zabbix\userdfscrpts\ slaveStatus.bat
  • @echo off
  • cd /d D:\XXX\mysql-5.6.19-winx64\bin
  • mysql -uroot -p"XXX" -e "SHOW SLAVE STATUS\G" > C:\Zabbix\middlefiles\status2.txt 2>C:\Zabbix\middlefiles\waring2.txt
  • rem pause
  • cd /d C:\Zabbix\middlefiles
  • type status2.txt|findstr "\"|find /i /c "Yes" > status.txt
  • for /f %%i in (status.txt) do set status=%%i
  • echo %status%
  • rem pause


1.png
  • (2) C:\Zabbix\userdfscrpts\slaveTime.bat
  • @echo off
  • rem set MYSQL_PWD=XXXX
  • cd /d D:\XXXX\mysql-5.6.19-winx64\bin
  • mysql -uroot -p"XXXX" -e "SHOW SLAVE STATUS\G" > C:\Zabbix\middlefiles\status1.txt 2>C:\Zabbix\middlefiles\waring.txt
  • type C:\Zabbix\middlefiles\status1.txt|find "Seconds_Behind_Master" > C:\Zabbix\middlefiles\losttime.txt
  • for /f "delims=: tokens=2" %%i in (C:\Zabbix\middlefiles\losttime.txt) do set time=%%i
  • echo %time%
  • rem pause



1.png
3、 在zabbix服务端所在的机器上,来对key值进行测试。
  • [jobadmin@i611-zabbixnw-1 ~]$ zabbix_get -s 172.30.30.4 -p 10050 -k "mysql.slavestatus"


这里-s选项后面接着的是要测试的key值所在的主机IP地址,-p后面接着的是端口,-k后面跟着要测试的key值名。如果返回结果正常,就表示这个key已经配好了,可以使用了。
1.png
4、 将前面自定义的key添加到zabbix agent所在host的item中去,步骤如下:
(1)登录zabbix的监控页面,在configuration下选择hosts,然后可以根据Group或者Filter来筛选出刚才修改的zabbix agent所在的主机。
1.png
(2)点击主机名,然后点击items选项,在出来的页面上选择Create item。
1.png
(3)在出来的创建新的item页面上,填入必要的信息。信息填写完毕之后,点击Add添加。
Name字段表示item的名字,自己定义。
Key字段就是刚才我们在zabbix agent的配置文件中所创建的自定义key,这里我填mysql.ping.
Type of information字段:表示key值返回的类型是什么,是字符还是无符号数字类型还是小数类型还是文本格式
Data type字段:是对Type of information字段的补充
Units字段:表示单位,例如key返回的结果是百分比,这里填入%
Applications字段:表示将你新建的item归结为哪一类中。这个Application也是要自己建的,表示一个类。比如硬件、软件、CPU等等。
1.png
(4)点击主机名,然后点击Triggers选项,在出来的页面上选择Create trigger。
1.png
(5) 在出来的创建新的Trigger页面上,填入必要的信息。信息填写完毕之后,点击Add添加。
Name字段:表示Trigger的名字,自己定义。
Expression字段:是Trigger的主体,表示你希望在什么条件下触发Trigger。
Description字段:是对Trigger的补充解释。比如Trigger的表达式中0表示成功,1表示失败等。
Severity字段:表示Trigger的等级,从低到高。
1.png
Expression字段边上点击Add,会弹出条件填写的界面,如下:
1.png
Item字段:表示这个Trigger是根据哪一个item来创建的。选择select,会出现所有可以选择的item。我们可以选择刚才创建的Item。
Function字段:这个下拉列表中有各种条件,根据自己的需要选择一种。
N:这个N就是Function字段中条件表达式里面的那个N值。
4、查看Trigger是否生效:
回到Trigger页面下,可以看到主机上所有的Trigger。如果Trigger的状态为Enabled,就表示这个Trigger是正常的,可用的。否则就是有问题。
1.png
原创:刘雪梅


1.png

本版积分规则

选择云运维时代的王牌讲师-长河老师,助你轻松入门ITIL Foundation培训课程

QQ|小黑屋|手机版|Archiver|艾拓先锋网 ( 粤ICP备11099876号-1|网站地图

Baidu

GMT+8, 2018-10-16 14:16 , Processed in 0.299180 second(s), 33 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表