婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫 > python自動(dòng)統(tǒng)計(jì)zabbix系統(tǒng)監(jiān)控覆蓋率的示例代碼

python自動(dòng)統(tǒng)計(jì)zabbix系統(tǒng)監(jiān)控覆蓋率的示例代碼

熱門標(biāo)簽:西藏智能外呼系統(tǒng)五星服務(wù) 工廠智能電話機(jī)器人 千陽自動(dòng)外呼系統(tǒng) 400電話申請(qǐng)服務(wù)商選什么 清遠(yuǎn)360地圖標(biāo)注方法 江蘇客服外呼系統(tǒng)廠家 原裝電話機(jī)器人 平頂山外呼系統(tǒng)免費(fèi) 在哪里辦理400電話號(hào)碼

腳本主要功能:

1)通過zabbix api接口采集所有監(jiān)控主機(jī)ip地址;

2)通過cmdb系統(tǒng)(藍(lán)鯨)接口采集所有生產(chǎn)主機(jī)IP地址、主機(jī)名、操作系統(tǒng)、電源狀態(tài);

3)以上2步返回?cái)?shù)據(jù)對(duì)比,找出未監(jiān)控主機(jī)ip地址,生成csv文件;

4)發(fā)送郵件。

腳本如下:

#!/usr/bin/python
#coding:utf-8

import requests
import json
import re
import time
import csv
from collections import Counter
import smtplib
from email.header import Header
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication

# 從cmdb系統(tǒng)獲取虛擬化生產(chǎn)主機(jī)ip
def getCmdbProdHost():
  url1 = 'http://paas.xxxx.com/api/c/compapi/v2/cc/search_inst/'
  data1 = {
    "bk_app_secret": "**********************",
    "bk_app_code": "bk_cmdb",
    "bk_username": "admin",
    "bk_obj_id": "host",
    "page": {
      "start": 0,
      "limit": 2000,
      "sort": "bk_inst_id"
    },
    "fields": {
      "host": [
        "bk_host_id",
        "bq_hostname",
        "bk_host_innerip",
        "bq_hosttype",
        "powerState",
        "bq_osname"
      ]
    }  }
  r1 = requests.post(url1, json=data1)
  response_dict1 = r1.json()
  #print(response_dict1)
  prodip_dict = {}
  testip = "10.210.xx|10.210.xx|10.210.xx|10.210.xx|xx.xx.xx"   #測試網(wǎng)段ip
  for i in response_dict1.get('data')["info"]:
    if i["bq_hosttype"] == "t2" and i["powerState"] == "poweredOn" and not re.search("UAT", i["bq_hostname"]) and not re.match(testip, i["bk_host_innerip"]):
      prodip_dictkey = i["bk_host_innerip"]
      #prodip_dictvalue = i["bq_hostname"]
      prodip_dictvalue = [i["bq_hostname"], i["bq_osname"], i["powerState"]]
      prodip_dict[prodip_dictkey] = prodip_dictvalue
  return prodip_dict

#獲取zabbix系統(tǒng)登錄認(rèn)證
def getZabToken(url, post_headers, url_user, url_password):
  post_data = {
    "jsonrpc": "2.0",
    "method": "user.login",
    "params": {
      "user": url_user,
      "password": url_password
    },
    "id": 1
  }
  ret = requests.post(url, data=json.dumps(post_data), headers=post_headers)
  return json.loads(ret.text).get("result")

def getZabHost(url,post_headers,token):
  data = {
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
      "output": [
        "hostid",
        "host"
      ],
      "selectInterfaces": [
        "interfaceid",
        "ip"
      ]
    },
    "id": 2,
    "auth": token,
  }
  request = requests.post(url, headers=post_headers, data=json.dumps(data))
  dict = json.loads(request.content)
  zab_ip = []
  for i in dict['result']:
    zab_ip.append(i['host'])
  return zab_ip

def compare(zabhostlist, cmdbhostdict):
  zabbixiplist = Counter(zabhostlist)
  cmdbiplist = Counter(list(cmdbhostdict.keys()))
  nomonip = {}
  for i in list((cmdbiplist - zabbixiplist).elements()):
    nomonip_value = cmdbhostdict[i]
    nomonip_key = i
    nomonip[nomonip_key] = nomonip_value
  print(nomonip)
  return nomonip

class writeToCsv(object):
  def __init__(self,data,info):
    self.data = data
    self.info = info

  def write_to_csv(self):
    rows = self.data
    info = self.info
    csvfile = "zabbix未監(jiān)控生產(chǎn)系統(tǒng)IP列表" + info + time.strftime('_%Y%m%d%H%M%S', time.localtime(time.time())) + ".csv"
    # print(csvfile)
    # 創(chuàng)建文件對(duì)象
    f = open(csvfile, 'w', newline='')

    # 通過文件創(chuàng)建csv對(duì)象
    csv_write = csv.writer(f)

    # writerow: 按行寫入, writerows: 是批量寫入
    # 寫入數(shù)據(jù) 取列表的第一行字典,用字典的key值做為頭行數(shù)據(jù)
    # csv_write.writerow(rows[0].keys())
    csv_write.writerow(["未監(jiān)控生產(chǎn)IP", "主機(jī)名", "操作系統(tǒng)", "電源狀態(tài)"])

    # 循環(huán)里面的字典,將value作為數(shù)據(jù)寫入進(jìn)去
    ip = list(rows.keys())
    hostname = list(rows.values())
    for row in range(len(ip)):
      csv_write.writerow([ip[row], hostname[row][0], hostname[row][1], hostname[row][2]])

    # 關(guān)閉打開的文件
    f.close()
    print("讀寫完成:",csvfile)
    return csvfile

def sendmail(csvfile,receiver):
  sender = 'xxx@xxx.com'
  smtpserver = 'xx.xx.xx.xx'
  username = 'xxx@xxx.com'
  password = '******'
  mail_title = 'zabbix未監(jiān)控生產(chǎn)主機(jī)IP地址'

  # 創(chuàng)建一個(gè)帶附件的實(shí)例
  message = MIMEMultipart()
  message['From'] = sender
  message['To'] = ','.join(receiver)
  message['Subject'] = Header(mail_title, 'utf-8')

  # 郵件正文內(nèi)容
  message.attach(MIMEText('每日自動(dòng)統(tǒng)計(jì)監(jiān)控覆蓋率', 'plain', 'utf-8'))

  # 構(gòu)造附件
  att1 = MIMEApplication(open(csvfile, 'rb').read()) # 打開附件
  att1.add_header('Content-Disposition', 'attachment', filename=csvfile) # 為附件命名
  message.attach(att1)

  smtpObj = smtplib.SMTP_SSL() # 注意:如果遇到發(fā)送失敗的情況(提示遠(yuǎn)程主機(jī)拒接連接),這里要使用SMTP_SSL方法
  smtpObj.connect(smtpserver)
  smtpObj.login(username, password)
  smtpObj.sendmail(sender, message['To'].split(','), message.as_string())
  print("郵件發(fā)送成功?。?!")
  smtpObj.quit()

if __name__ == '__main__':
  url = 'http://xx.xx.xx.xx/api_jsonrpc.php'         #zabbix監(jiān)控系統(tǒng)接口地址
  post_headers = {'Content-Type': 'application/json'}
  url_user = "Admin"
  url_passwd = "******"
  auth = getZabToken(url,post_headers,url_user,url_passwd)
  zabhostlist = getZabHost(url,post_headers,auth)       #獲取zabbix監(jiān)控主機(jī)ip地址列表
  cmdbhostdict = getCmdbProdHost()               #獲取cmdb主機(jī)地址列表
  #zabbix監(jiān)控主機(jī)和cmdb主機(jī)做比較
  data = compare(zabhostlist, cmdbhostdict)

  #導(dǎo)出csv文件
  info = '統(tǒng)計(jì)'
  write = writeToCsv(data, info)
  resp = write.write_to_csv()
  receiver = ['hushanshan2@bngrp.com']   #y郵件接收人,多人用逗號(hào)區(qū)分開
  sendmail(resp, receiver)

到此這篇關(guān)于python自動(dòng)統(tǒng)計(jì)zabbix系統(tǒng)監(jiān)控覆蓋率的文章就介紹到這了,更多相關(guān)python統(tǒng)計(jì)zabbix內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python系統(tǒng)監(jiān)控模塊psutil功能與經(jīng)典用法分析
  • Python使用psutil獲取進(jìn)程信息的例子
  • Python中psutil的介紹與用法
  • python使用psutil模塊獲取系統(tǒng)狀態(tài)
  • Python psutil模塊簡單使用實(shí)例
  • Python使用psutil庫對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行采集監(jiān)控的方法

標(biāo)簽:白城 日照 錦州 股票 西安 天水 隨州 安慶

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python自動(dòng)統(tǒng)計(jì)zabbix系統(tǒng)監(jiān)控覆蓋率的示例代碼》,本文關(guān)鍵詞  python,自動(dòng),統(tǒng)計(jì),zabbix,系統(tǒng),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python自動(dòng)統(tǒng)計(jì)zabbix系統(tǒng)監(jiān)控覆蓋率的示例代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于python自動(dòng)統(tǒng)計(jì)zabbix系統(tǒng)監(jiān)控覆蓋率的示例代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲精品自拍动漫在线| 捆绑变态av一区二区三区| 久久久综合视频| 国产精品的网站| 午夜免费欧美电影| 国产精品系列在线观看| 97国产一区二区| 精品理论电影在线| 一区二区三区美女视频| 麻豆视频一区二区| 91在线一区二区三区| 日韩一区二区三区视频在线 | 亚洲精品va在线观看| 欧美96一区二区免费视频| 成人涩涩免费视频| 欧美三级电影网| 26uuu国产电影一区二区| 亚洲主播在线播放| 成人晚上爱看视频| 日韩免费看的电影| 亚洲欧美日韩国产一区二区三区 | 欧美日韩亚洲不卡| 中文字幕在线不卡一区二区三区| 日产精品久久久久久久性色| 不卡av免费在线观看| 精品成人私密视频| 五月天激情综合| 在线亚洲免费视频| 中文字幕色av一区二区三区| 国产中文字幕精品| 欧美大片一区二区三区| 亚洲综合在线免费观看| 99精品一区二区三区| 中文字幕欧美激情| 精品一区二区三区在线视频| 91精品久久久久久久久99蜜臂| 一区二区三区在线观看欧美| www.日韩在线| 国产精品不卡在线| 国产91精品露脸国语对白| 精品毛片乱码1区2区3区| 麻豆一区二区三| 精品乱码亚洲一区二区不卡| 美国av一区二区| 精品国产91亚洲一区二区三区婷婷| 日韩av二区在线播放| 3d成人h动漫网站入口| 亚洲一区二区三区四区不卡| 99久久婷婷国产综合精品| 久久在线免费观看| 韩国成人福利片在线播放| 日韩欧美国产一区二区三区| 欧美aaaaaa午夜精品| 日韩精品资源二区在线| 久久99久久久欧美国产| 精品国产伦理网| 国产福利一区在线| 中文字幕一区二区三区色视频| 国产99久久久精品| 亚洲欧美在线aaa| 欧美最猛性xxxxx直播| 亚洲欧美国产三级| 91福利区一区二区三区| 亚洲人成小说网站色在线| 国产91精品免费| 亚洲精品福利视频网站| 欧美视频一区二区三区在线观看| 亚洲一区二区中文在线| 日韩一区二区在线观看视频| 国产在线看一区| 国产精品女上位| 欧美丝袜第三区| 麻豆一区二区三| 国产精品久久久久久久久免费樱桃| 99久久99久久精品国产片果冻 | 色婷婷一区二区| 奇米色777欧美一区二区| 精品国产乱码久久久久久免费| 国产成人精品aa毛片| 亚洲激情成人在线| 777亚洲妇女| 丰满白嫩尤物一区二区| 亚洲精品日韩综合观看成人91| 欧美日韩精品三区| 国产成人精品三级麻豆| 一区二区免费视频| 久久影院午夜论| 欧美亚洲自拍偷拍| 国产精品一区二区无线| 夜夜揉揉日日人人青青一国产精品| 91精品麻豆日日躁夜夜躁| 成人不卡免费av| 五月天久久比比资源色| 中文字幕不卡在线观看| 欧美一二三区精品| 日本丰满少妇一区二区三区| 黑人巨大精品欧美黑白配亚洲| 夜夜操天天操亚洲| 中文字幕av免费专区久久| 91精品国产一区二区三区| 99免费精品在线观看| 狠狠色丁香婷婷综合久久片| 一区二区三区精密机械公司| 久久久精品国产免大香伊 | 欧美性猛交xxxxxxxx| 粉嫩在线一区二区三区视频| 日本va欧美va精品发布| 国产精品成人免费| 久久久不卡影院| 欧美剧在线免费观看网站| 97久久超碰国产精品| 国产乱妇无码大片在线观看| 免费一级欧美片在线观看| 亚洲免费观看视频| 国产精品私人影院| 久久众筹精品私拍模特| 日韩一区二区三区av| 欧美日韩精品综合在线| 色综合久久99| 99久久精品国产导航| 成人一区二区三区视频在线观看| 精品无人区卡一卡二卡三乱码免费卡| 日韩在线一区二区| 天堂成人免费av电影一区| 亚洲一区二区三区在线播放| 亚洲激情校园春色| 亚洲五码中文字幕| 午夜视频在线观看一区二区| 一区二区三区在线免费播放| 国产精品久久久久桃色tv| 国产日韩欧美一区二区三区综合| 日韩一区二区三区在线| 日韩欧美一二区| 精品久久一区二区| 久久久噜噜噜久噜久久综合| 久久久.com| 国产精品久久久久7777按摩 | 国产精品久久久久影院色老大| 国产欧美日产一区| 国产午夜亚洲精品午夜鲁丝片| 337p粉嫩大胆噜噜噜噜噜91av | 精品国产一二三| 日韩免费观看高清完整版在线观看| 欧美另类一区二区三区| 91精品国产色综合久久| 欧美成人一区二区| 精品成人在线观看| 欧美精品一区二区三区蜜桃| 日本一区二区三区免费乱视频| 国产欧美综合色| 亚洲欧洲日韩av| 亚洲久草在线视频| 亚洲国产精品欧美一二99| 日韩va亚洲va欧美va久久| 国内精品在线播放| 99精品国产热久久91蜜凸| 欧美亚洲一区二区在线观看| 欧美区在线观看| 久久综合五月天婷婷伊人| 国产精品免费看片| 亚洲成人综合视频| 麻豆成人av在线| 国产乱人伦偷精品视频不卡| 久久66热re国产| 国产制服丝袜一区| 91蝌蚪国产九色| 欧美精品丝袜中出| 精品人在线二区三区| 国产亚洲综合在线| 亚洲在线一区二区三区| 久草精品在线观看| 色哟哟精品一区| 欧美日本一区二区三区四区| 91精品国产综合久久小美女| 久久午夜电影网| 中文一区二区在线观看| 日韩毛片一二三区| 亚洲国产精品久久久男人的天堂| 美女看a上一区| 99re这里都是精品| 精品国内片67194| 亚洲高清免费一级二级三级| 久久国产精品区| 菠萝蜜视频在线观看一区| 91精品国产品国语在线不卡| 亚洲欧洲日产国码二区| 五月综合激情日本mⅴ| 国产aⅴ综合色| 欧美性猛交xxxxxx富婆| 日韩限制级电影在线观看| 精品电影一区二区三区| 夜夜嗨av一区二区三区网页| 国产老妇另类xxxxx| 欧美日韩免费高清一区色橹橹| 欧美激情在线观看视频免费| 无码av免费一区二区三区试看| www..com久久爱| 日韩精品最新网址| 亚洲人成网站影音先锋播放| 国产美女一区二区|