shell脚本获取zabbix监控图

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

创新互联公司是专业的金塔网站建设公司,金塔接单;提供成都做网站、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行金塔网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

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

    网上教程比较多,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.找到关键词

    shell脚本获取zabbix监控图

        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

网页题目:shell脚本获取zabbix监控图
网页路径:http://scyanting.com/article/ghiehs.html