我这边使用的是网宿的CDN做加速,然后有一堆的接口可以调用单独查询;
网宿提供所有频道一起查询;cdn上面都是钱,稍微监控还是非常有必要的。
api信息格式:
https://myview.chinanetcenter.com/api/bandwidth-channel.action?u=xxxx&p=xxxx&cust=xxx&date=xxxx&channel=xxxxxx;xxxxx&isExactMatch=false&region=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带宽相关推荐

  1. Zabbix监控系统安装与使用

    一.Zabbix简介: zabbix是完全开源的工具,整合了cacti和nagios等特性 cacti:snmp nagios:linux 主机:nrpe    设备:snmp 附:SNMP(udp1 ...

  2. 【IPFS应用开发】--zabbix监控接口配置

    在IPFS应用开发.调试.测试.发布.运行.运维过程中,发现了一个问题--对ipfs节点的数据监控很重要.这些数据可以很直观的判断出是否要扩容,硬件瓶颈在哪,需要如何增加资源. [IPFS应用开发]- ...

  3. Linux实战教学笔记49:Zabbix监控平台3.2.4(一)搭建部署与概述

    https://www.cnblogs.com/chensiqiqi/p/9162986.html 一,Zabbix架构 zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企 ...

  4. zabbix监控-基本原理介绍

    一.Linux下开源监控系统简单介绍 1)cacti:存储数据能力强,报警性能差 2)nagios:报警性能差,存储数据仅有简单的一段可以判断是否在合理范围内的数据长度,储存在内存中.比如,连续采样数 ...

  5. 傲云浏览器linux,Centos7安装部署zabbix监控软件

    目录 部署监控服务器 部署监控服务器Zabbix Server Web页面验证设置 部署监控服务器 一.安装LNMP环境 Zabbix监控管理控制台需要通过Web页面展示出来,并且还需要使用MySQL ...

  6. Zabbix监控部署(内网监控外网服务器)

    最近公司新买了一批OVH服务器,这些服务器的硬盘.负载.和实时带宽需要监控.首先想到的就是用Zabbix监控.因为在公司内网中,之前部署过Zabbix监控.只需要在这些OVH服务器上安装zabbix的 ...

  7. zabbix监控mysql日志告警_zabbix监控mysql以及报警(二)终

    Zabbix部署 监控数据库 报警服务(二) 终 接着zabbix(一)接着部署 配置过一段时间后,观察下监控图效果出来了没 zabbix3.0 server已自带mysql的模板了,只需配置好age ...

  8. Centos7安装部署zabbix监控软件

    目录 部署监控服务器 部署监控服务器Zabbix Server Web页面验证设置 部署监控服务器 一.安装LNMP环境 Zabbix监控管理控制台需要通过Web页面展示出来,并且还需要使用MySQL ...

  9. zabbix监控Linux流程

    zabbix监控配置流程 创建主机 创建主机组并加入主机 添加监控项 添加触发器 配置媒介 配置动作 手动触发告警 添加被监控的主机 详细流程 在zabbix图形页面--配置--主机--创建主机(定义 ...

最新文章

  1. 北美欧洲顶级大咖齐聚,在这里读懂 AIoT 未来!
  2. Oracle DBWR,LGWR,CKPT,ARCH 触发条件 总结
  3. bp神经网络pid控制_文章推荐 | BP神经网络PID控制器在无人机编队飞行中的应用...
  4. wince 6.0 嵌入式开发指导
  5. 设置图像的title_【HTML】2 图像标签和属性
  6. mysql 序列号生成器 (自定义函数)
  7. python科学计算与可视化教程
  8. double取两位小数_Java语言中:float、double数据类型在内存中是如何存储的
  9. apache安装、配置虚拟主机、配置日志
  10. 计算机c盘无法扩展,win10c盘无法扩展卷怎么办
  11. 利用envi与arcmap/arcgisPro制作一张植被覆盖指数专题地图(地图学作业)
  12. 微信小程序 条码 二维码生成
  13. 论算法人的语言表达能力
  14. 计组中原码一位乘和原码二位乘方法和注意事项
  15. 图书管理系统(图书类)
  16. java64位官方下载10_Java10.0下载|Java10.0.1 64位官方版 - 爱学府软件园
  17. 苹果自带测试卡路里的软件,‎App Store 上的“h-Tracker:卡路里计算器”
  18. Neural Collaborative Filtering 1
  19. 【英语竞赛】专项练习之听力
  20. 正睿集训数论专题【8.9】

热门文章

  1. pythonshellnohup_python nohup 实现远程运行不宕机操作
  2. java判断总共天数_Java判断两个日期相差天数的方法
  3. 【 Verilog HDL 】Verilog 迭代连接运算符
  4. 【 C 】字符串函数专题
  5. vue 弹窗时 监听手机返回键关闭弹窗(页面不跳转)
  6. 动作捕捉技术,VR体验沉浸感的“助燃剂”
  7. 课后作业-阅读任务-阅读提问-1
  8. 如何使用Azure ML Studio开启机器学习
  9. js实现随机选取[10,100)中的10个整数,存入一个数组,并排序。 另考虑(10,100]和[10,100]两种情况。...
  10. JDK 5.0 注解的使用