zabbix 监控CDN带宽
我这边使用的是网宿的CDN做加速,然后有一堆的接口可以调用单独查询;
网宿提供所有频道一起查询;cdn上面都是钱,稍微监控还是非常有必要的。
api信息格式:
https://myview.chinanetcenter.com/api/bandwidth-channel.action?u=xxxx&p=xxxx&cust=xxx&date=xxxx&channel=xxxxxx;xxxxx&isExactMatch=false®ion=xxxx&isp=xxxx&resultType=xxxx&format=xxx&startdate=xxxx&enddate=xxxx
说明:
u 和p 是必选项,p是cdn后台设置的myview密码;其他可以默认或者不选;
channel:频道信息;不填默认是全部。
isp:运营商带宽;默认是所有。
startdate和enddate: 查询的时间;不选默认是全部,而这个时间也有一个规律,就是年月和时间之前用%20转码:比如(2013-01-01%2010:10就是 2013-01-01 10:10)
其api文档可以咨询客服。
1、先导入bs 查看返回数据结构:
开始查看数据脚本:
[root@mail python]# cat check_cndbindwaith.py
#coding=utf-8
import urllib,urllib2
from bs4 import BeautifulSoup
import datetime
import sys
username = "xxx"
password = "xxxx"
now_time=datetime.datetime.now()
starttime=(now_time - datetime.timedelta(seconds=300)).strftime('%Y-%m-%d %H:%M')
starttimeformat = starttime.split()[0]+"%20"+starttime.split()[1]
endtime=(datetime.datetime.now()).strftime('%Y-%m-%d %H:%M')
endtimtformat = endtime.split()[0]+"%20"+endtime.split()[1]
url = "https://myview.chinanetcenter.com/api/bandwidth-channel.action?u=%s&p=%s&startdate=%s&enddate=%s" %(username,password,starttimeformat,endtimtformat)
try:html = urllib2.urlopen(url, timeout=5)
except urllib2.HTTPError as err:print str(err)
soup = BeautifulSoup(html)
print soup
二、查看结果并取值:
[root@mail python]# python check_cndbindwaith.py markup_type=markup_type))
<?xml version="1.0" encoding="utf-8"?><html><body><provider name="ChinaNetCenter" resulttype="1" type="bandwidth-channel">
<bandwidth time="2016-01-26 15:35:00">0.00</bandwidth>
</channel>
</date>
</provider></body></html>备注:我们要取的是bandwidth的值。然后通过观察发现有时候脚本返回两个值。而我们zabbix
应该只要一个返回值。三、zabbix 脚本:#coding=utf-8
import urllib,urllib2
from bs4 import BeautifulSoup
import datetime
import sys
def cdn():username = "xxx"password = "xxxx"now_time=datetime.datetime.now()starttime=(now_time - datetime.timedelta(seconds=300)).strftime('%Y-%m-%d %H:%M')starttimeformat = starttime.split()[0]+"%20"+starttime.split()[1]endtime=(datetime.datetime.now()).strftime('%Y-%m-%d %H:%M')endtimtformat = endtime.split()[0]+"%20"+endtime.split()[1]data = []url = "https://myview.chinanetcenter.com/api/bandwidth-channel.action?u=%s&p=%s&startdate=%s&enddate=%s" %(username,password,starttimeformat,endtimtformat)try:html = urllib2.urlopen(url, timeout=5)except urllib2.HTTPError as err:print str(err)soup = BeautifulSoup(html)for key in soup.find_all("bandwidth"):data.append(key.get_text())for i in data: if i.startswith("0") and not i.startswith("1"):return 0else:return int(i.split(".")[0])if __name__ == "__main__":print cdn()
四、zabbix agent编写脚本并且收集数据:
[root@mail scripts]# vim /usr/local/zabbix/etc/zabbix_agentd.conf
UserParameter=cdn,/usr/bin/python /usr/local/zabbix/scripts/check_cdnbindwaitch.py
五、添加item:
六:出图和触发器根据自己需要进行添加:
转载于:https://blog.51cto.com/xiaoluoge/1738652
zabbix 监控CDN带宽相关推荐
- Zabbix监控系统安装与使用
一.Zabbix简介: zabbix是完全开源的工具,整合了cacti和nagios等特性 cacti:snmp nagios:linux 主机:nrpe 设备:snmp 附:SNMP(udp1 ...
- 【IPFS应用开发】--zabbix监控接口配置
在IPFS应用开发.调试.测试.发布.运行.运维过程中,发现了一个问题--对ipfs节点的数据监控很重要.这些数据可以很直观的判断出是否要扩容,硬件瓶颈在哪,需要如何增加资源. [IPFS应用开发]- ...
- Linux实战教学笔记49:Zabbix监控平台3.2.4(一)搭建部署与概述
https://www.cnblogs.com/chensiqiqi/p/9162986.html 一,Zabbix架构 zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企 ...
- zabbix监控-基本原理介绍
一.Linux下开源监控系统简单介绍 1)cacti:存储数据能力强,报警性能差 2)nagios:报警性能差,存储数据仅有简单的一段可以判断是否在合理范围内的数据长度,储存在内存中.比如,连续采样数 ...
- 傲云浏览器linux,Centos7安装部署zabbix监控软件
目录 部署监控服务器 部署监控服务器Zabbix Server Web页面验证设置 部署监控服务器 一.安装LNMP环境 Zabbix监控管理控制台需要通过Web页面展示出来,并且还需要使用MySQL ...
- Zabbix监控部署(内网监控外网服务器)
最近公司新买了一批OVH服务器,这些服务器的硬盘.负载.和实时带宽需要监控.首先想到的就是用Zabbix监控.因为在公司内网中,之前部署过Zabbix监控.只需要在这些OVH服务器上安装zabbix的 ...
- zabbix监控mysql日志告警_zabbix监控mysql以及报警(二)终
Zabbix部署 监控数据库 报警服务(二) 终 接着zabbix(一)接着部署 配置过一段时间后,观察下监控图效果出来了没 zabbix3.0 server已自带mysql的模板了,只需配置好age ...
- Centos7安装部署zabbix监控软件
目录 部署监控服务器 部署监控服务器Zabbix Server Web页面验证设置 部署监控服务器 一.安装LNMP环境 Zabbix监控管理控制台需要通过Web页面展示出来,并且还需要使用MySQL ...
- zabbix监控Linux流程
zabbix监控配置流程 创建主机 创建主机组并加入主机 添加监控项 添加触发器 配置媒介 配置动作 手动触发告警 添加被监控的主机 详细流程 在zabbix图形页面--配置--主机--创建主机(定义 ...
最新文章
- 北美欧洲顶级大咖齐聚,在这里读懂 AIoT 未来!
- Oracle DBWR,LGWR,CKPT,ARCH 触发条件 总结
- bp神经网络pid控制_文章推荐 | BP神经网络PID控制器在无人机编队飞行中的应用...
- wince 6.0 嵌入式开发指导
- 设置图像的title_【HTML】2 图像标签和属性
- mysql 序列号生成器 (自定义函数)
- python科学计算与可视化教程
- double取两位小数_Java语言中:float、double数据类型在内存中是如何存储的
- apache安装、配置虚拟主机、配置日志
- 计算机c盘无法扩展,win10c盘无法扩展卷怎么办
- 利用envi与arcmap/arcgisPro制作一张植被覆盖指数专题地图(地图学作业)
- 微信小程序 条码 二维码生成
- 论算法人的语言表达能力
- 计组中原码一位乘和原码二位乘方法和注意事项
- 图书管理系统(图书类)
- java64位官方下载10_Java10.0下载|Java10.0.1 64位官方版 - 爱学府软件园
- 苹果自带测试卡路里的软件,App Store 上的“h-Tracker:卡路里计算器”
- Neural Collaborative Filtering 1
- 【英语竞赛】专项练习之听力
- 正睿集训数论专题【8.9】
热门文章
- pythonshellnohup_python nohup 实现远程运行不宕机操作
- java判断总共天数_Java判断两个日期相差天数的方法
- 【 Verilog HDL 】Verilog 迭代连接运算符
- 【 C 】字符串函数专题
- vue 弹窗时 监听手机返回键关闭弹窗(页面不跳转)
- 动作捕捉技术,VR体验沉浸感的“助燃剂”
- 课后作业-阅读任务-阅读提问-1
- 如何使用Azure ML Studio开启机器学习
- js实现随机选取[10,100)中的10个整数,存入一个数组,并排序。 另考虑(10,100]和[10,100]两种情况。...
- JDK 5.0 注解的使用