itemprototype.update

Descripción

object itemprototype.update(object/array itemPrototypes)

Este método permite actualizar prototipos de métrica existentes.

Este método solo está disponible para los tipos de usuario Administrador y Superadministrador. Los permisos para llamar al método se pueden revocar en la configuración del rol de usuario. Ver Roles de usuario para más información.

Parámetros

(objeto/matriz) Propiedades del prototipo de métrica que se actualizarán.

La propiedad itemid debe definirse para cada prototipo de métrica, todas las demás propiedades son opcionales. Sólo se actualizarán las propiedades pasadas, todas las otras permanecerán sin cambios.

Además de las propiedades de prototipo de métrica estándar, el método acepta los siguientes parámetros.

Parámetro Tipo Descripción
preprocessing matriz Opciones de preprocesamiento del prototipo de métrica para reemplazar las opciones de preprocesamiento actuales.

Comportamiento de parámetros:
- solo lectura para objetos heredados
tags matriz Etiquetas del prototipo de métrica.

Valores de retorno

(objeto) Devuelve un objeto que contiene los ID de los prototipos de métrica actualizados bajo la propiedad itemids.

Ejemplos

Cambiar la interfaz de un prototipo de métrica

Cambie la interfaz del equipo que utilizarán las métricas descubiertas.

Solicitud:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "itemid": "27428",
               "interfaceid": "132"
           },
           "id": 1
       }

Respuesta:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "27428"
               ]
           },
           "id": 1
       }

Actualizar el prototipo de métrica dependiente

Actualice el prototipo de métrica dependiente con el nuevo ID del prototipo de métrica principal. Solo se permiten dependencias en el mismo equipo (template/discovery rule), por lo tanto, la métrica principal y dependiente deben tener el mismo ID de equipo e ID de regla.

Solicitud:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "master_itemid": "25570",
               "itemid": "189030"
           },
           "id": 1
       }

Respuesta:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "189030"
               ]
           },
           "id": 1
       }

Actualizar el prototipo de métrica del agente HTTP

Cambie los campos de consulta y elimine todos los encabezados personalizados.

Solicitud:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "itemid":"28305",
               "query_fields": [
                   {
                       "random": "qwertyuiopasdfghjklzxcvbnm"
                   }
               ],
               "headers": []
           }
           "id": 1
       }

Respuesta:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "28305"
               ]
           },
           "id": 1
       }

Actualización de opciones de preprocesamiento de métricas

Actualizar un prototipo de métrica con la regla de preprocesamiento de métrica "multiplicador personalizado".

Solicitud:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "itemid": "44211",
               "preprocessing": [
                   {
                       "type": 1,
                       "params": "4",
                       "error_handler": 2,
                       "error_handler_params": "5"
                   }
               ]
           },
           "id": 1
       }

Respuesta:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "44211"
               ]
           },
           "id": 1
       }

Actualización de un prototipo de métrica de script

Actualizar un prototipo de métrica de script con una secuencia de comandos diferente y eliminar los parámetros innecesarios que fueron utilizados por el script anterior.

Solicitud:

{
           "jsonrpc": "2.0",
           "method": "itemprototype.update",
           "params": {
               "itemid": "23865",
               "parameters": [],
               "script": "Zabbix.log(3, 'Log test');\nreturn 1;"
           },
           "id": 1
       }

Respuesta:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "23865"
               ]
           },
           "id": 1
       }

Fuente

CItemPrototype::update() en ui/include/classes/api/services/CItemPrototype.php.