object host.update(object/array hosts)
Este método permite actualizar los grupos de hosts existentes.
Este método solo está disponible para los tipos de usuarios Administrador y Superadministrador. Los permisos para activar el método se pueden revocar en los ajustes de rol de usuario. Ver User roles para más información.
(object/array)
Propiedades del host que se actualizarán.
La propiedad hostid
debe definirse para cada host, a todos los demás las propiedades son opcionales. Sólo se actualizarán las propiedades dadas, todas otras permanecerán sin cambios.
Sin embargo, tenga en cuenta que al actualizar el nombre técnico del host también se actualizará el nombre visible del host (si no está dado o está vacío) por el valor de nombre técnico del host.
Además de las standard host properties, el método acepta los siguientes parámetros.
Parámetro | Tipo | Descripción |
---|---|---|
groups | objeto/matriz | Host grupos para reemplazar los grupos de hosts actuales a los que pertenece el host. Los grupos de hosts deben tener la propiedad definida groupid . Todos los grupos de hosts que no figuran en la solicitud se desvincularán. |
interfaces | objeto/matriz | Host interfaces para reemplazar las interfaces de host actuales. Se eliminarán todas las interfaces que no figuran en la solicitud. |
tags | objeto/matriz | Host etiquetas para reemplazar las etiquetas de host actuales. Se eliminarán todas las etiquetas que no aparezcan en la solicitud . |
inventario | objeto | Propiedades del host inventory. |
macros | objeto/matriz | User macros para reemplazar las macros de usuario actuales. Se eliminarán todas las macros que no figuran en la solicitud. |
templates | objeto/matriz | Templates para reemplazar las templates actualmente vinculadas. Todas las templates que no figuran en la solicitud solo se desvincularán. Las templates deben tener definida la propiedad templateid . |
templates_clear | objeto/matriz | Templates para desvincular y borrar del host. Las templates deben tener definida la propiedad templateid . |
A diferencia de la Zabbix Frontend, cuando "nombre" (visible nombre de host) es el mismo que host
(nombre de host técnico), actualizando host
a través de API no actualizará automáticamente el "nombre". Ambas propiedades deben ser actualizadas explícitamente.
(object)
Devuelve un objeto que contiene los IDs de los hosts actualizados bajo la propiedad hostids
.
Habilite el monitoreo del host, es decir, establezca su estado en "0".
Solicitud:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"status": 0
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Respuesta:
Desvincule y borrar dos templates del host.
Solicitud:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"templates_clear": [
{
"templateid": "10124"
},
{
"templateid": "10125"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Respuesta:
Reemplace todas las macros del host por dos nuevas.
Solicitud:
{
"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
}
Respuesta:
Cambie el modo de inventario y agregue ubicación
Solicitud:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10387",
"inventory_mode": 0,
"inventory": {
"location": "Latvia, Riga"
}
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Respuesta:
Reemplace todas las etiquetas de host por una nueva.
Solicitud:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10387",
"tags": {
"tag": "OS",
"value": "RHEL 7"
}
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Respuesta:
Actualice el host "10590" para usar la PSK cifrada solo para conexiones desde el host al Zabbix server y cambie la identidad PSK y la clave PSK. Tenga en cuenta que el host debe estar pre-configured to use PSK.
Solicitud:
{
"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
}
Respuesta:
CHost::update() en ui/include/classes/api/services/CHost.php.