1,收集TCP连接状态
vim /etc/zabbix/shell/tcp_status.sh
#!/bin/bash
LISTEN(){
ss -an|grep '^tcp'|grep 'LISTEN'|wc -l
}
SYN_RECV(){
ss -an|grep '^tcp'|grep 'SYN[_-]'|wc -l
}
ESTABLISHED(){
ss -an |grep '^tcp' |grep 'ESTAB'|wc -l
}
TIME_WAIT(){
ss -an |grep '^tcp' |grep 'TIME[_-]WAIT'|wc -l
}
$1 #接收第1个参数
zabbix-agent配置文件
mkdir /etc/zabbix/shell
chown -R zabbix.zabbix /etc/zabbix/shell/ #更改目录所属者为zabbix用户
chmod a+x /etc/zabbix/shell/tcp_status.sh #文件权限可执行
vim /etc/zabbix/zabbix_agentd.d/tcp_status.conf
UserParameter=nginx_status[*],/etc/zabbix/shell/tcp_status.sh $1
service zabbix-agent restart
zabbix-server添加监控项(省略)
2,mysql状态信息收集
#!/bin/bash
#mysql for zabbix
UPDATE(){
mysqladmin -uroot -p *** status|awk '{print $2}'
}
Slow_queries(){
mysqladmin -uroot -p *** status|awk '{print $9}'
}
Com_delete(){
mysqladmin -uroot -p *** extended-status |awk '/\<Com_delete\>/{print $4}'
}
Com_insert(){
mysqladmin -uroot -p *** extended-status |awk '/\<Com_insert\>/{print $4}'
}
Com_update(){
mysqladmin -uroot -p *** extended-status |awk '/\<Com_update\>/{print $4}'
}
Com_select(){
mysqladmin -uroot -p *** extended-status |awk '/\<Com_select\>/{print $4}'
}
Com_commit(){
mysqladmin -uroot -p *** extended-status |awk '/\<Com_commit\>/{print $4}'
}
Com_rollbak(){
mysqladmin -uroot -p *** extended-status |awk '/\<Com_rollback\>/{print $4}'
}
$1
3,内存信息收集
#!/bin/bash
memtotal(){
cat /proc/meminfo |awk '/MemTotal/{print $2}'
}
memfree(){
cat /proc/meminfo |awk '/MemFree/{print $2}'
}
dirty(){
cat /proc/meminfo |awk '/Dirty/{print $2}'
}
$1
网友评论