def sendVMStatus(vm, isUp): if isUp == True: status = 1 # UP else: status = 2 # DOWN driver = HandlerConfigurator.get_vt_am_driver() vm_urn = driver.generate_sliver_urn(vm) timestamp = int(time.time()) itemname = settings.ZBX_ITEM_USERVMSTATUS + '[' + str(vm_urn) + ']' metric = Metric(vm.name, str(itemname), status, timestamp) ZabbixHelper.sendZabbix(metric) return
def sendAgentStatus(server, available): if available == True: status = 1 # UP else: status = 2 # DOWN timestamp = int(time.time()) driver = HandlerConfigurator.get_vt_am_driver() server_urn = driver.generate_component_id(server) itemname = settings.ZBX_ITEM_HOSTSTATUS + '[' + str(server_urn) + ']' metric = Metric(server.name, str(itemname), status, timestamp) ZabbixHelper.sendZabbix(metric) return
def sendVMStatusDiscovery(vms): timestamp = int(time.time()) driver = HandlerConfigurator.get_vt_am_driver() for vm in vms: discoveryList = [] vm_urn = driver.generate_sliver_urn(vm) discovery = {"{#USERVM.URN}": vm_urn} discoveryList.append(discovery) tmpobj = {"data": discoveryList} discoveryStr = json.dumps(tmpobj) metric = Metric(vm.name, settings.ZBX_ITEM_DISCOVERY_USERVMSTATUS, str(discoveryStr), timestamp) ZabbixHelper.sendZabbix(metric) return
def ListResources(): rspec_manager = HandlerConfigurator.get_vt_am_rspec_manager() driver = HandlerConfigurator.get_vt_am_driver() resources_data = driver.get_all_servers() return rspec_manager.compose_advertisement(resources_data)
# URL_NAME GAPI3_URL = "gapi" # Parameter Types CREDENTIALS_TYPE = "array" # of strings OPTIONS_TYPE = "struct" RSPEC_TYPE = "string" VERSION_TYPE = "struct" URN_TYPE = "string" SUCCESS_TYPE = "boolean" STATUS_TYPE = "struct" TIME_TYPE = "string" URNS_TYPE = "string" ACTION_TYPE = "string" handler = HandlerConfigurator.configure_handler() @rpcmethod(signature=["string", "string"], url_name=GAPI3_URL) def ping(challenge): return challenge @rpcmethod(signature=[VERSION_TYPE], url_name=GAPI3_URL) def GetVersion(options={}): return handler.GetVersion(options) @rpcmethod(signature=[RSPEC_TYPE, CREDENTIALS_TYPE, OPTIONS_TYPE], url_name=GAPI3_URL) def ListResources(credentials, options): return handler.ListResources(credentials, options)
def __init__(self): threading.Thread.__init__(self) self.period = 900 self.vt_driver = HandlerConfigurator.get_vt_am_driver()