设为首页 收藏本站
查看: 1205|回复: 0

[经验分享] zabbix 自动出图脚本

[复制链接]

尚未签到

发表于 2015-9-9 09:24:10 | 显示全部楼层 |阅读模式
#!/bin/bash
#不配置字符集,脚本放到crontab里发出的中文E-MAIL乱码
export LANG=en_US.UTF-8
#有点强迫症,习惯什么东西在什么地方干 ^_^
cd /home/zabbix/graph
#保存cookie文件名
COOKIE=zbx_cookie.txt
> $COOKIE
#我是在zbx上开一个组,弄一个只读账号,把想出图的主机放进去。
NAME="reader"
PASSWD="123456789"
#EMAIL木什么好说地,有几个e-mail并排写就好啦。
EMAIL="haha@abc.com hehe@abc.com lala@123.com"
#需要提取数据的IP地址,其实这个IP主要是用来给图片命名用的。恩恩
IPADDR=(192.168.1.1 192.168.1.2)
#这个地方比较麻烦,因为itemid是唯一的,所以需要自己肉眼高速扫描的去查。
#这里我们拿内存和cpu来举个例子吧。恩恩。
CPU_ITEMID=(12345 67890)
MEM_ITEMID=(98765 65432)
#我们高大上的zbx地址
URL="http://127.0.0.1"
#登录保存cookie
curl -s -c $COOKIE -b $COOKIE  -d "request=&name=${NAME}&password=${PASSWD}&autologin=1&enter=Sign+in" $URL
#还是强迫症,木办法。
[[ -d cpu_png ]] || mkdir cpu_png
[[ -d mem_png ]] || mkdir mem_png
#PERIOD配置获取数据的时间段,用秒数来表示。
#ld需求要7天内的。604800,大家都懂的。
#这里举个例子我写的3600。
PERIOD=3600
#这是我们的开始时间,也就是当前时间,
STIME=$(date +%Y%m%d%H%M%S)
#图片宽度
WHIDTH=1200
#我是针对ITEMID组来进行循环创建图片的,为了显的好看点,我才这么写的。
#要不横着写起来太长鸟~!你们懂的。我们开始拼url
for i in $(seq 0 $[${#CPU_ITEMID[@]}-1]);do
curl -s -b $COOKIE \
-F "itemid=${CPU_ITEMID}" \
-F "period=$PERIOD" \
-F "curtime=$STIME" \
-F "width=$WHIDTH" \
"$URL/chart.php" > cpu_png/${IPADDR}_cpu.png
done
for i in $(seq 0 $[${#MEM_ITEMID[@]}-1]);do
curl -s -b $COOKIE \
-F "itemid=${MEM_ITEMID}" \
-F "period=$PERIOD" \
-F "curtime=$STIME" \
-F "width=$WHIDTH" \
"$URL/chart.php" > mem_png/${IPADDR}_mem.png
done

#我开始有点懒了,反正图片都出来了爱怎么地怎么地吧。我手动拼的。
CPU_PNG="-a cpu_png/192.168.1.1_cpu.png -a cpu_png/192.168.1.2_cpu.png"
MEM_PNG="-a mem_png/192.168.1.1_mem.png -a mem_png/192.168.1.2_mem.png"
#E-MAIL的TITLE,都懂的。不解释了。
CPU_TITLE="$(date +%Y年%m月%d日) Cpu idle 曲线图"
MEM_TITLE="$(date +%Y年%m月%d日) Memory realused 曲线图"
#卡卡卡开始对ld进行邮件轰炸,用不用写个死循环呢。:p
echo "附件为抽查服务器cpu idle曲线图" | mail -s "$CPU_TITLE" $CPU_PNG $EMAIL
echo "附件为抽查服务器memory realused曲线图" | mail -s "$MEM_TITLE" $MEM_PNG $EMAIL
#做事要干净,吃完饭记得擦嘴。
[[ -d cpu_png ]] && rm -rf cpu_png
[[ -d mem_png ]] && rm -rf  mem_png
exit 0
  其实就是根据这个url自己拼的。
DSC0000.png
  最后呈现出来的样子就系这样啦。
DSC0001.png
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-111285-1-1.html 上篇帖子: zabbix 监控dell 硬件(centos7) 下篇帖子: 自动化运帷之分布式监控-zabbix 安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表