使用python获取vCenter默认警报定义
需要用到的python 模块有pyvim、atexit、openpyxl
python代码如下:
#!/usr/bin/python3
# -*- coding:utf-8 -*-
# @Time : 2021-10-22
# @Author : xczheng
# 通过vcenter api获取所有vCenter警报定义
from pyvim.connect import Disconnect, SmartConnectNoSSL
import atexit
import openpyxl
def get_alarm():
si = SmartConnectNoSSL(host='xxx.xxx.xxx.xxxx', user='xxx', pwd='xxx', port=443)
atexit.register(Disconnect, si)
content = si.RetrieveContent()
alarmname = []
alarmdescription = []
alarmexpression = []
action = []
for i in content.rootFolder.declaredAlarmState:
alarmname.append(i.alarm.info.name)
alarmdescription.append(i.alarm.info.description)
alarmexpression.append(i.alarm.info.expression.expression)
action.append(i.alarm.info.action)
wb = openpyxl.Workbook()
ws = wb.create