host.update

Beschrijving

object host.update(object/array hosts)

Deze methode maakt het mogelijk om bestaande hosts bij te werken.

Deze methode is alleen beschikbaar voor gebruikerstypes Admin en Superadmin. Rechten om de methode aan te roepen kunnen worden ingetrokken in de instellingen van gebruikersrollen. Zie Gebruikersrollen voor meer informatie.

Parameters

(object/array) Hosteigenschappen die moeten worden bijgewerkt.

De eigenschap hostid moet worden gedefinieerd voor elke host, alle andere eigenschappen zijn optioneel. Alleen de opgegeven eigenschappen worden bijgewerkt, allemaal andere blijven ongewijzigd.

Houd er echter rekening mee dat het bijwerken van de technische naam van de host ook wordt bijgewerkt de zichtbare naam van de host (indien niet gegeven of leeg) door de technische van de host naam waarde.

Naast de standaard hosteigenschappen, is de methode accepteert de volgende parameters.

Parameter Type Beschrijving
groups object/array Host groepen om de huidige hostgroepen waartoe de host behoort te vervangen.

De hostgroepen moeten de groupid hebben eigenschap gedefinieerd. Alle hostgroepen die niet in het verzoek worden vermeld, worden ontkoppeld.
interfaces object/array Host interfaces om de huidige hostinterfaces te vervangen.

Alle interfaces die niet in het verzoek worden vermeld, worden verwijderd.
tags object/array Host tags om de huidige hosttags te vervangen.

Alle tags die niet in het verzoek worden vermeld, worden verwijderd .
inventaris object Host inventaris eigenschappen.
macros object/array Gebruikersmacro's om de huidige gebruikersmacro's te vervangen.

Alle macro's die niet in het verzoek worden vermeld, worden verwijderd.
templates object/array Templates om de momenteel gekoppelde sjablonen te vervangen. Alle sjablonen die niet in de aanvraag worden vermeld, worden alleen ontkoppeld.

Voor de sjablonen moet de eigenschap templateid zijn gedefinieerd.
templates_clear object/array Templates om te ontkoppelen en te wissen van de host.

Voor de sjablonen moet de eigenschap templateid zijn gedefinieerd.

In tegenstelling tot de Zabbix-frontend, wanneer naam (zichtbaar hostnaam) is hetzelfde als host (technische hostnaam), bijwerken van host via API zal naam niet automatisch updaten. Beide eigenschappen moeten zijn expliciet bijgewerkt.

Retourwaarden

(object) Retourneert een object dat de ID's van de bijgewerkte hosts bevat onder de eigenschap hostids.

Voorbeelden

Host inschakelen

Activeer de monitoring voor de host, dat wil zeggen, stel de status ervan in op "0".

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10126",
               "status": 0
           },
           "id": 1
       }

Retourwaarde:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

Templates ontkoppelen

Ontkoppel en verwijder twee sjablonen van de host.

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10126",
               "templates_clear": [
                   {
                       "templateid": "10124"
                   },
                   {
                       "templateid": "10125"
                   }
               ]
           },
           "id": 1
       }

Retourwaarde:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

Hostmacro's bijwerken

Vervang alle hostmacro's door twee nieuwe.

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10126",
               "macros": [
                   {
                       "macro": "{$PASS}",
                       "value": "wachtwoord"
                   },
                   {
                       "macro": "{$DISC}",
                       "value": "sda",
                       "description": "Bijgewerkte beschrijving"
                   }
               ]
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

Hostinventaris bijwerken

Wijzig inventarisatiemodus en voeg locatie toe

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10387",
               "inventory_mode": 0,
               "inventory": {
                   "location": "Letland, Riga"
               }
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10387"
               ]
           },
           "id": 1
       }

Hosttags bijwerken

Vervang alle hosttags door een nieuwe.

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10387",
               "tags": {
                   "tag": "OS",
                   "value": "RHEL 7"
               }
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10387"
               ]
           },
           "id": 1
       }

Bijwerken van ontdekte hostmacro's

Zet de door de ontdekkingsregel gecreëerde macro "automatisch" om naar "handmatig" en verander de waarde ervan naar "nieuwe-waarde".

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10387",
               "macros": {
                   "hostmacroid": "5541",
                   "value": "nieuwe-waarde",
                   "automatic": "0"
               }
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10387"
               ]
           },
           "id": 1
       }

Hostversleuteling bijwerken

Werk de host "10590" bij om alleen PSK-versleuteling te gebruiken voor verbindingen van host naar Zabbix-server, en verander de PSK-identiteit en PSK-sleutel. Let op dat de host vooraf geconfigureerd moet zijn om PSK te gebruiken.

Aanvraag:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10590",
               "tls_connect": 1,
               "tls_accept": 2,
               "tls_psk_identity": "PSK 002",
               "tls_psk": "e560cb0d918d26d31b4f642181f5f570ad89a390931102e5391d08327ba434e9"
           },
           "id": 1
       }

Antwoord:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10590"
               ]
           },
           "id": 1
       }

Zie ook

Bron

CHost::update() in ui/include/classes/api/services/CHost.php.