U kunt de zoekfunctiemethoden in de vCenter-invoegtoepassing gebruiken om query's uit te voeren voor vCenter-inventarisobjecten. U kunt XPath-expressies gebruiken om zoekparameters te definiëren.
De vCenter-invoegtoepassing bevat een set zoekfunctiemethoden voor objecten zoals getAllDatastores(), getAllResourcePools() en findAllForType(). U kunt deze methoden gebruiken voor toegang tot de inventarissen van de vCenter-instanties die zijn verbonden met uw Automation Orchestrator-server, en op id, naam of andere eigenschappen naar objecten zoeken.
Omwille van de prestaties retourneren de zoekfunctiemethoden geen eigenschappen voor de gezochte objecten, tenzij u een set eigenschappen in de zoekquery opgeeft.
U kunt een onlineversie van de script-API van de vCenter-invoegtoepassing raadplegen op de startpagina van de Orchestrator-documentatie.
XPath-expressies gebruiken met voorbeelden van de vCenter-invoegtoepassing
Wanneer u een zoekfunctiemethode aanroept, kunt u expressies op basis van de XPath-querytaal gebruiken. De zoekopdracht retourneert alle inventarisobjecten die overeenkomen met de XPath-expressies. Als u query's voor eigenschappen wilt uitvoeren, kunt u deze in het zoekscript opnemen in de vorm van een tekenreeksarray.
Het volgende JavaScript-voorbeeld gebruikt het VcPlugin-scriptverwerkingsobject en een XPath-expressie om de namen te retourneren van alle datastoreobjecten die deel uitmaken van de door vCenter beheerde objecten en de tekenreeks ds in hun naam bevatten.
var datastores = VcPlugin.getAllDatastores(null, "xpath:name[contains(.,'ds')]"); for each (datastore in datastores){ System.log(datastore.name); }
Dezelfde XPath-expressie kan met het Server-scriptverwerkingsobject en de zoekfunctiemethode findAllForType worden aangeroepen.
var datastores = Server.findAllForType("VC:Datastore", "xpath:name[contains(.,'ds')]"); for each (datastore in datastores){ System.log(datastore.name); }
Het volgende scriptvoorbeeld retourneert de namen van alle hostsysteemobjecten waarvan de id met het cijfer 1 begint.
var hosts = VcPlugin.getAllHostSystems(null, "xpath:id[starts-with(.,'1')]"); for each (host in hosts){ System.log(host.name); }
Het volgende script retourneert de namen en id's van alle datacenterobjecten die de tekenreeks DC, in hoofd- of kleine letters, in hun naam bevatten. Het script haalt ook de eigenschap tag op.
var datacenters = VcPlugin.getAllDatacenters(['tag'], "xpath:name[contains(translate(., 'DC', 'dc'), 'dc')]"); for each (datacenter in datacenters){ System.log(datacenter.name + " " + datacenter.id); }