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

 找回密码
 立即注册 - 请先获取邀请码

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 305|回复: 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

本版积分规则

团购课程最新动态

 

 

高品质!好口碑!

百分百通过率!

PeopleCertEXIN

国际授权资质!

ITIL Foundation北上广

2天精华班,包证书

ITIL Foundation三天精

讲,知名讲师,包证书

ITIL Expert 金牌讲师北

上广深11天,包证书

DevOps Foundation

2天热点认证班,包证书

ITSS 认证IT服务经理

4天课程,包证书

Prince2双证4天高级班

Cobit高端课程2天班

Togaf高端课程4天班

 

报名热线: 4008-060-230


QQ|小黑屋|手机版|Archiver|ITIL先锋论坛万人社区 ( 粤ICP备17056641号|网站地图

Baidu

GMT+8, 2018-4-25 02:17 , Processed in 0.154387 second(s), 39 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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