使用go语言写了一个采集mysql性能的小程序,通过SDK连接mysql数据库,采集数据库性能指标,同时采集远程数据库的性能,大家可试用一下,欢迎提出修改意见和建议
被监控端设置
监控下载:
Linux:
mymon_x86.tar.gz
mymon_x64.tar.gz
Windows:
mymon_windows_amd64.zip
Windows:
下载解压后放在c盘,修改agentd.conf文件,执行脚本路径为:
c:\mymon\mymon.exe
重启agentd即可
Linux:
修改zabbix agentd配置文件(具体位置根据自身情况设置),添加key
vi /usr/local/zabbix/etc/zabbix_agentd.conf
添加如下
#mysql
UserParameter=mysql.status[*],/usr/local/zabbix/bin/mysql/mymon $1 $2
添加好之后执行
mkdir -p /usr/local/zabbix/bin/mysql/ cd /usr/local/zabbix/bin/mysql/ wget http://dl.cactifans.org/tools/mymon_x64.tar.gztar zxvf mymon_x64.tar.gz chmod a+x mymon
同时编辑cfg.json配置文件,设置要监控数据库的连接参数
vi /usr/local/zabbix/bin/mysql/cfg.json
文件内容如下
{ "mysql": { "username": "root", "password": "123456", "host": "localhost", "port": 3306 }, "sever": { "log": "/tmp/mon.log" } }
登录数据库的账号,密码等信息,log项目不用设置,默认即可
设置好之后重启zabixx agent
service zabbix-agent restart
zabbix服务端设置
测试agent是否工作正常
/usr/local/bin/zabbix_get -s 192.168.7.186 -k mysql.status[GlobalStatus,Uptime]
如果有一下回显,表示工作正常
[root@vm153 ~]# /usr/local/bin/zabbix_get -s 192.168.7.186 -k mysql.status[GlobalStatus,Uptime] 12364726[root@vm153 ~]#
导入模版:zabbix_mysql_templates.xml
并关联到主机
效果:
参数:
PS:可自行添加对应key可监控项目,模版自带了几种,脚本包括800多项目
具体更具key定义,括号内第一项为key类型,分GlobalStatus和GlobalVariables二种,