Zabbix实战-简易教程--进程类

一、获取LLD的json对象(游戏进程)

通过脚本获取游戏进程:

#!/bin/bash

gameprocess=(`ps xua|grep -E "server_global|server_ps|server_log|server_name|server_rank|server_db|server_gc|server_chat|server_th|server_zone|server_gs*|server_login"|grep -v grep|awk -F[/] '{print $2}'|awk '{print $1}'   2>/dev/null`)

length1=${#gameprocess[@]}
printf "{\n"
printf  '\t'"\"data\":["
for ((i=0;i<$length1;i++))
do
        printf '\n\t\t{'
        printf "\"{#GAMEPROCESS}\":\"${gameprocess[$i]}\"}"
        if [ $i -lt $[$length1-1] ];then
                printf ','
        fi
done
printf  "\n\t]\n"
printf "}\n"
EOF

 执行结果如下:

脚本已经上传至github:https://github.com/loveqx/zabbix-doc/blob/master/zabbix-scripts/zabbix-template-gameprocess/gameprocess.sh

 

二、测试和自定义key

通过上面方法获取需要监控的进程后,就可以对进程的各项资源进行监控了。其中资源包括:cup使用大小和占用百分比、内存使用大小和占用百分比以及进程数量。

# discovery game process
UserParameter=custom.process.discovery,/bin/sh /etc/zabbix/externalscripts/gameprocess.sh
UserParameter=custom.game.process.num[*],/bin/bash /etc/zabbix/externalscripts/game_process_number.sh $1
UserParameter=custom.game.process.cpu[*],sudo top -c -b -n1|grep -v grep |grep -w `ps xua|grep "\.\/$1$$"|grep -v grep|grep -v sh|awk '{print $$2}'`|awk '{print $$9}'
UserParameter=custom.game.process.mem[*],ps xua|grep -w "\.\/$1"|grep -v grep|grep -v sh |grep -v python|awk '{print $$4}'
UserParameter=custom.game.process.vsz.mem[*],ps xua|grep -w "\.\/$1"|grep -v grep|grep -v sh |grep -v python|awk '{print $$5}'
UserParameter=custom.game.process.rss.mem[*],ps xua|grep -w "\.\/$1"|grep -v grep|grep -v sh |grep -v python|awk '{print $$6}'

 

注意:

1、其中cpu由于研发要求查看瞬时值,所以采用top方式进行采集。采集方式是通过pid来进行过滤。

2、更加值得注意的是:在centos7上,由于top出来的结果会显示不全。在本机执行没有问题,而通过远程执行的时候,结果会显示不全。

三、制作模板

模板已上传至github:https://github.com/loveqx/zabbix-doc/tree/master/zabbix-scripts/zabbix-template-gameprocess

四、效果图

1、CPU百分比

2、内存百分比

 

3、进程数量

4、内存大小

 

 

 

六、参考文献

 脚本地址:https://github.com/loveqx/zabbix-doc/tree/master/zabbix-scripts/zabbix-template-gameprocess

 

posted @ 2017-12-08 21:14  skyflask  阅读(553)  评论(0编辑  收藏  举报