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 del elemento que se actualizarán.

La propiedad itemid debe definirse para cada prototipo de artículo, todos los demás Las propiedades son opcionales. Sólo se actualizarán las propiedades pasadas, todas otros permanecerán sin cambios.

Además del prototipo de artículo estándar propiedades, el método acepta lo siguiente parámetros.

Parámetro Tipo Descripción
preprocessing array Opciones de Preprocesamiento de prototipo de elemento para reemplazar las opciones de preprocesamiento actuales.

Comportamiento de parámetros:
- solo lectura para objetos heredados
etiquetas matriz Etiquetas de prototipo de artículo.

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 la 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": [
                   {
                       "name": "random",
                       "value": "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.