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
(object/array) Propiedades de la item prototype que se actualizarán.
La propiedad itemid debe estar definida para cada item prototype, todas las demás propiedades son opcionales. Sólo se actualizarán las propiedades pasadas, todas las demás permanecerán sin cambios.
Además de las propiedades estándar de la item prototype, el método acepta los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| preprocessing | array | Opciones de preprocesamiento de la item prototype para reemplazar las opciones de preprocesamiento actuales. Comportamiento del parámetro: - sólo lectura para objetos heredados |
| tags | array | Etiquetas de la item prototype. |
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.
{
"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.
{
"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.
{
"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".
{
"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.
{
"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.