国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 網管 > 服務器 > 正文

Zabbix與RRDtool繪圖篇之用ZabbixAPI取監控數據

2020-05-27 13:09:16
字體:
來源:轉載
供稿:網友

  一起來看一個Zabbix與RRDtool繪圖篇之用ZabbixAPI取監控數據技巧文章,希望下文可以幫助到各位。

  經過一個星期的死磕,Zabbix取數據和RRDtool繪圖都弄清楚了,做第一運維平臺的時候繪圖取數據是直接從Zabbix的數據庫取的,顯得有點笨拙,不過借此也了解了Zabbix數據庫結構還是有不少的收獲。

  學習Zabbix的API官方文檔少不了,官方文檔地址鏈接https://www.zabbix.com/documentation/ 大家選擇對應的版本就好了,不過2.0版本的API手冊位置有點特別開始我還以為沒有,后來找到了如下https://www.zabbix.com/documentation/2.0/manual/appendix/api/api 用ZabbixAPI取監控數據的思路大致是這樣的,先獲取所有監控的主機,再遍歷每臺主機獲取每臺主機的所有圖形,最后獲取每張圖形每個監控對象(item)的最新的監控數據或者一定時間范圍的數據。 下面按照上面的思路就一段一段的貼出我的程序代碼:

  1、登錄Zabbix獲取通信token

  #!/usr/bin/env python

  #coding=utf-8

  import json

  import urllib2

  import sys

  ##########################

  class Zabbix:

  def __init__(self):

  self.url = "http://xxx.xxx.xxx.xxx:xxxxx/api_jsonrpc.php"

  self.header = {"Content-Type": "application/json"}

  self.authID = self.user_login()

  def user_login(self):

  data = json.dumps({

  "jsonrpc": "2.0",

  "method": "user.login",

  "params": {"user": "用戶名", "password": "密碼"},

  "id": 0})

  request = urllib2.Request(self.url,data)

  for key in self.header:

  request.add_header(key,self.header[key])

  try:

  result = urllib2.urlopen(request)

  except URLError as e:

  print "Auth Failed, Please Check Your Name And Password:",e.code

  else:

  response = json.loads(result.read())

  result.close()

  authID = response[result]

  return authID

  ##################通用請求處理函數####################

  def get_data(self,data,hostip=""):

  request = urllib2.Request(self.url,data)

  for key in self.header:

  request.add_header(key,self.header[key])

  try:

  result = urllib2.urlopen(request)

  except URLError as e:

  if hasattr(e, reason):

  print We failed to reach a server.

  print Reason: , e.reason

  elif hasattr(e, code):

  print The server could not fulfill the request.

  print Error code: , e.code

  return 0

  else:

  response = json.loads(result.read())

  result.close()

  return response

  2、獲取所有主機

  #####################################################################

  #獲取所有主機和對應的hostid

  def hostsid_get(self):

  data = json.dumps({

  "jsonrpc": "2.0",

  "method": "host.get",

  "params": { "output":["hostid","status","host"]},

  "auth": self.authID,

  "id": 1})

  res = self.get_data(data)[result]

  #可以返回完整信息

  #return res

  hostsid = []

  if (res != 0) and (len(res) != 0):

  for host in res:

  if host[status] == 1:

  hostsid.append({host[host]:host[hostid]})

  elif host[status] == 0:

  hostsid.append({host[host]:host[hostid]})

  else:

  pass

  return hostsid

  返回的結果是一個列表,每個元素是一個字典,字典的key代表主機名,value代表hostid

Zabbix與RRDtool繪圖篇之用ZabbixAPI取監控數據 武林網

  3、獲取每臺主機的每張圖形

  ###################################################################

  #查找一臺主機的所有圖形和圖形id

  def hostgraph_get(self, hostname):

  data = json.dumps({

  "jsonrpc": "2.0",

  "method": "host.get",

  "params": { "selectGraphs": ["graphid","name"],

  "filter": {"host": hostname}},

  "auth": self.authID,

  "id": 1})

  res = self.get_data(data)[result]

  #可以返回完整信息rs,含有hostid

  return res[0][graphs]

  注意傳入的參數是主機名而不是主機id,結果也是由字典組成的列表。

zabbixget02

  4、獲取每張圖的監控對象item

  #可以返回完整信息rs,含有hostid

  tmp = res[0][items]

  items = []

  for value in tmp:

  if $ in value[name]:

  name0 = value[key_].split([)[1].split(])[0].replace(,, )

  name1 = value[name].split()

  if CPU in name1:

  name1.pop(-2)

  name1.insert(1,name0)

  else:

  name1.pop()

  name1.append(name0)

  name = .join(name1)

  tmpitems = {itemid:value[itemid],delay:value[delay],units:value[units],name:name,value_type:value[value_type],

lastclock:value[lastclock],lastvalue:value[lastvalue]}

  else:

  tmpitems = {itemid:value[itemid],delay:value[delay],units:value[units],name:value[name],value_type:value[value_type],

lastclock:value[lastclock],lastvalue:value[lastvalue]}

  items.append(tmpitems)

  return items

  返回的數據已經包含了最新的一次監控數據的值和取值的時間戳,如果只需要取最新的監控數據,到這里其實就可以了,記得這次傳入的參數是graphid。

zabbixget03

  5、根據itemid取得更多的監控數據

  下面是取10條監控數據,可以任意更改參數獲取更多的數據,全憑自己所需了。

  ################################################################

  #獲取歷史數據,history必須賦值正確的類型0,1,2,3,4 float,string,log,integer,text

  def history_get(self, itemid, i):

  data = json.dumps({

  "jsonrpc": "2.0",

  "method": "history.get",

  "params": { "output": "extend",

  "history": i,

  "itemids": itemid,

  "sortfield": "clock",

  "sortorder": "DESC",

  "limit": 10},

  "auth": self.authID,

  "id": 1})

  res = self.get_data(data)[result]

  return res

zabbixget04

 

  上面的所有代碼加起來就是一個Zabbix取數據的類。取出來的數據可以用RRDtool繪圖或做其它用途了

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
在线视频99| www.亚洲视频| 国产精品一区二三区| 四虎成年永久免费网站| 亚洲电影视频在线| gogo在线高清视频| 国产在线黄色片| 国产三级做爰在线观看| 亚洲一本大道| 99视频在线观看地址| 99re热在线观看| 国产免费福利网站| 91视频久色| 九色成人在线| 精品欧美不卡一区二区在线观看 | 尤物视频免费在线观看| 国产高清一级片| www.蜜桃av| 精品一区二区三区在线观看l| 日本三级在线视频| 国产精品666| 免费国产视频| 在线免费黄色毛片| 国产理论片免费观看| 在线国产网址| 国产人成在线观看| 高清色视频在线观看| 亚洲精品少妇久久久久久| 在线91av| 青青草中文字幕| 亚洲图区综合| 在线视频婷婷| 精品国语对白精品自拍视| 五月天亚洲激情| 九九热视频在线| 天天插天天色| 性国产高清在线观看| 永久免费av片在线观看全网站| 国产丝袜精品丝袜| 国产一区二区三区不卡免费观看 | 日本动漫理论片在线观看网站| 国产污污在线观看| 国产在线一二三区| 九九热在线视频免费观看| yjizz视频网站在线播放| 亚洲精品视频在线免费| 99re热视频在线| 亚洲男人网站| 免费三级毛片| 1区2区3区在线| 国产素人视频在线观看| 国产欧美一区二区三区小说| 国产一卡2卡3卡免费网站| 中文字幕在线视频不卡| 中文字幕久热在线精品| 午夜视频免费在线观看| 国产香蕉免费精品视频| 91在线视频免费看| 日本黄在线观看| 开心激情五月婷婷| 中文字幕在线第一页| 国产黄色av免费看| 在线观看av中文| 麻豆国产在线播放| 国产特级毛片| 亚洲网站视频在线观看| 激情五月色综合亚洲小说| 五月天天在线| 在线亚洲不卡| 国产在线超碰| 国产黄色在线看| av文字幕在线观看| 国产又色又爽又黄刺激在线视频| 天堂在线中文资源| 97影院理论午夜| 欧美日韩综合高清一区二区| 国产精品一品| 亚洲人成影院在线| 国产人成高清视频观看| 免费观看久久久久| 在线免费观看高清视频色| 国产九色porn网址| 青青青手机在线视频观看| 国产大学生粉嫩无套流白浆| 另类综合图区| 精品剧情v国产在线观看| 国产免费黄色| 日本高清中文字幕| av天天在线| 精品美女在线观看视频在线观看 | 依依成人在线| 国产黄色免费网| 中文字幕在线免费看| 麻豆国产视频| 免费不卡中文字幕视频| 女子免费在线观看视频www| 亚洲尤物在线视频| 伊人伊人av电影| 国产日本在线观看| 国产成人精品实拍在线| 国产娇喘精品一区二区三区图片| 国产乱子伦三级在线播放| 国产在线色视频| 最新亚洲精品国自产在线观看| 天天操天天曰| 国产福利视频在线| 精品视频一二区| 性网站在线看| 麻豆国产视频| 国产亚洲精品久久久久久移动网络 | 免费特级黄毛片| 四虎精品视频| 黄色国产网站在线播放| 国产蜜臀av在线播放| 国产午夜电影| 91涩漫在线观看c| 影音先锋在线中文字幕| 亚洲男人的天堂成人| 久热免费视频| 国产95在线|亚洲| 在线观看的网站你懂的| 免费看成年人视频在线观看| 中文字幕成人乱码在线电影| 国产激情视频一区二区三区| 羞羞视频在线观看免费| 最近免费中文字幕在线第一页 | 国产丝袜在线观看视频| 91高清国产| 欧美啪啪精品| 国产天堂素人系列在线视频| av麻豆国产| 中文字幕乱在线伦视频乱在线伦视频| 国产黄在线看| 成年女人在线视频| 2019年中文字幕| 91超碰免费在线| 四虎成人免费| 国产网站在线播放| 欧美性猛交xxxx免费看蜜桃| 国产视频二区| 久久五月精品中文字幕| 国产超碰在线| 国产午夜在线视频| 精品资源在线看| av在线中文| 中文av在线播放| 国产超碰精品在线观看| 国产秀色在线www免费观看| а√最新版在线天堂| 国产精品冒白浆免费视频| 国产在线观看网站| 亚洲欧美综合乱码精品成人网| 丁香花在线电影| 欧美性xxxx交| 免费高清视频日韩| 精品中文字幕不卡在线视频| 青青青国产视频| 四虎成人精品在永久在线观看| 在线午夜视频| 在线亚洲电影| 亚洲男人的天堂成人| 中文在线视频观看| 午夜在线不卡| 九九热在线视频| 国产在线观看av| 国产午夜在线| 精品视频二区| 99reav| 欧美色第一页| 中文字幕在线影视资源| 最新国产在线| 18 激情视频在线| av在线二区| 国产麻豆视频| 999国产在线视频| 亚洲精品乱码电影在线观看| 日本一本久久| 国产理论在线观看| 国产精品久久人| 在线观看的av网站| 超碰免费在线观看| 国产区高清在线| 91www在线观看| xxx国产精品| 国产精品粉嫩av| 免费网站看黄yyy222| 国产秀色在线www免费观看| 2019年中文字幕| 免费特级黄毛片| 国产精品视频一区二区免费不卡| 91在线网址| 综合激情亚洲| 日本免费视频www| 国产91在线视频蝌蚪| 久热精品免费视频| 精品国内一区二区三区免费视频| 国产主播色在线| 亚洲欧美精选| 国产va在线| 国产视频一二|