host.update

Beschrijving

object host.update(object/array-hosts)

Met deze methode kunnen bestaande hosts worden bijgewerkt.

Deze methode is alleen beschikbaar voor Admin en Super admin gebruikers typen. Machtigingen om de methode aan te roepen kunnen worden ingetrokken in de gebruikersrol instellingen. Zie Gebruiker rollen 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

Een host inschakelen

Schakel hostbewaking in, d.w.z. stel de status in op 0.

Verzoek:

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

Antwoord:

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

Sjablonen ontkoppelen

Ontkoppel en wis twee sjablonen van host.

Verzoek:

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

Antwoord:

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

Hostmacro's bijwerken

Vervang alle hostmacro's door twee nieuwe.

Verzoek:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10126",
               "macros": [
                   {
                       "macro": "{$PASS}",
                       "value": "password"
                   },
                   {
                       "macro": "{$DISC}",
                       "value": "sda",
                       "description": "Updated description"
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Antwoord:

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

Hostinventaris bijwerken

Voorraadmodus wijzigen en locatie toevoegen

Verzoek:

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

Antwoord:

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

Bijwerken van hosttags

Vervang alle hosttags door een nieuwe.

Verzoek:

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

Antwoord:

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

Bijwerken van hostencryptie

Update de host "10590" om alleen PSK-encryptie te gebruiken voor verbindingen van host naar Zabbix-server, en wijzig de PSK-identiteit en PSK-sleutel. Merk op dat de host vooraf geconfigureerd moet zijn om PSK te gebruiken.

Verzoek:

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

Antwoord:

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

Zie ook

Bron

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