shell脚本获取zabbix监控图

时间:2016-06-17 00:51:45   收藏:0   阅读:1758

    因为领导提出需要每天看几次服务器的流量图,今天早上9点上班开始截图,十多台服务器、指定时间12小时流量图,截完图反复对照好几遍,一是怕选错主机,二是怕搞错时间段。使用zabbix时间不长,一直感觉很别扭,容易出错。加上中间还做了一点其他东西的统计,最后等邮件发出的时候都已经是10点以后了。

    这样下去,恐怕是影响仕途啊。若再加上有什么其他的事情,估计领导可以一边吃午饭一边看报表了,我只能选择吃土了...

    网上教程比较多,python写的,perl写的,应为暂时没这方面基础,照搬过来运行报错就无解了。自己动手丰衣足食。


以下为chrome浏览器 + Zabbix 2.4.x


正文:


准备工作:

浏览器登陆抓包:

    (略,此处需要抓得登陆zabbix的post请求  抓包:request=&name=admin&password=zabbix&autologin=1&enter=Sign+in)

graphid 以及 流量图地址

    graphid :

           图形ID(直译),不知道该怎么定义,通俗点讲就是 一台主机 + 一个监控点 ==>> 一个不同ID

    过程:

        1.Monitoring -- Dashboard -- Graphs

        2.选择对应的主机及对应的监控项

        3.在流量图上右键 检查

        4.找到关键词

    技术分享

        5.得到:chart2.php?graphid=963&period=3600&stime=20170616192202&updateProfile=1&profileIdx=web.screens&profileIdx2=963&sid=2eaa005d53dd3ea0&width=1222

        graphid=963

流量图地址:http://192.168.0.162/zabbix/chart2.php?graphid=963&period=3600&width=1222

        period为时间段,不加也可以,不过最好手工指定。

        width为图片宽度,不加也可以,出图会稍窄。

        剩余参数未做太多研究,有或没有暂时没发现区别,就略去了 。如果需要找全部graphid建议通过数据库查找。

脚本:

#!/bin/bash
## zabbix登陆地址、zabbix登陆用户
LOGURL="http://192.168.0.162/zabbix/index.php"
ZABBIX_USER="admin"
ZABBIX_PASS="zabbix"
GRAPHID=963
##时间段,12H
PERIOD=43200
## 请求地址 保存cookie    
curl -L -c cookie.txt --user-agent Mozilla/4.0 -d "request=&$ZABBIX_USER&password=$ZABBIX_PASS&autologin=1&enter=Sign+in" $LOGURL
##图片URL地址格式
URL="http://192.168.0.162/zabbix/chart2.php?graphid=$GRAPHID&period=$PERIOD&width=1222"
##带cookie请求图片URL,并保存
curl -c cookie.txt -b cookie.txt --user-agent Mozilla/4.0 $URL > /home/zabbix_$GRAPHID.png


本文出自 “熊熊熊大” 博客,请务必保留此出处http://x1ong.blog.51cto.com/11055831/1790101

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!