host.update

Descripció

object host.update(object/array hosts)

Aquest mètode permet actualitzar els equips existents.

Aquest mètode és disponible només per als usuaris de tipus Admin i Super admin. Els permisos per cridar al mètode es poden revocar a la configuració de rols d'usuaris. Per a més informació, veieu Rols d'usuari.

Paràmetres

(object/array) Propietats de l'equip per actualitzar.

La propietat hostid s'ha d'establir per a cada equip, totes les altres propietats són opcionals. Només s'actualitzaran les propietats indicades, les altres romandran sense canvis.

A més de les [propietats de l'objecte equip estàndard] (objecte#host), el mètode admet els paràmetres següents.

Paràmetre Tipus Descripció
groups object/array Grups d'equips substituint els grups d'equips actuals als quals pertany l'equip.

Els grups d'equip han de tindre la propietat groupid conjunt. Tots els grups d'equip que no són pas a la petició es desenllaçaran.
interfaces object/array Interfícies d'equips substituint les interfícies de l'equip actuals.

S'esborraran les interfícies que no són pas a la petició.
tags object/array Etiquetes d'equips substituint les etiquetes d'equip actuals.

S'esborraran totes etiquetes que no siguin pas a la petició.
inventory object Propietats de l'inventari d'equip .
macros object/array Macros d'usuari que substitueixen les macros d'usuari actuals.

S'esborraran les macros que no són pas a la petició.
templates object/array Plantilles substituint les plantilles enllaçades actualment. Totes les plantilles que no són pas a la petició es desenllaçaran.

Les plantilles han de tindre la propietat templateid establerta.
templates_clear object/array Templates per desenllaçar i esborrar de l'equip.

Les plantilles han de tenir la propietat templateid definida.

A diferència de la interfície de Zabbix, quan name (nom d'equip visible) és el mateix que host (nom d'equip tècnic), l'actualització de host mitjançant l'API no actualitzarà automàticament name. Les dues propietats s'han d'actualitzar explícitament.

Valors de retorn

(object) Retorna un objecte contingut als IDs dels equips actualitzats sota la propietat hostids.

Exemples

Activar un equip

Activa el monitoratge d'un equip; és a dir, defineix el seu estat a "0".

Petició:

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

Resposta:

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

Desenllaçar plantilles

Desenllaçar i netejar dues plantilles de l'equip.

Petició:

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

Resposta:

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

Actualitzar les macros d'equips

Reemplaça totes les macros d'equips per dues de noves.

Petició:

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

Resposta:

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

Actualitzar l'inventari d'equips

Canvia el mode d'inventari i hi afegeix una ubicació

Petició:

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

Resposta:

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

Actualitzar les etiquetes d'equips

Reemplaça totes les etiquetes d'un equip per una de nova.

Petició:

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

Resposta:

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

Actualitzar les macros d'equip descobertes

Converteix les regles de descobertes creades com a macro "automàtica" a "manual" i canvia el seu valor a "new-value".

Petició:

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

Resposta:

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

Actualitzant el xifrat d'equip

Actualitzar l'equip "10590" per emprar el xifrat PSK només per a les connexions de l'equip al servidor Zabbix i canviar la identitat PSK i la clau PSK. Tingueu en compte que l'equip ha d'ésser preconfigurat per emprar PSK.

Petició:

{
           "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
       }

Resposta:

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

Veieu també

Font

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