itemprototype.update
Descripción
object itemprototype.update(object/array itemPrototypes)
Este método permite actualizar prototipos de métricas existentes.
Este método solo está disponible para los tipos de usuario Admin y Super admin. Los permisos para llamar al método pueden ser revocados en la configuración de roles de usuario. Consulte Roles de usuario para obtener más información.
Parámetros
(object/array) Propiedades de la item prototype que se actualizarán.
La propiedad itemid debe definirse 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
(object) Devuelve un objeto que contiene los IDs de las métricas prototipo actualizadas bajo la propiedad itemids.
Ejemplos
Cambiar la interfaz de una métrica prototipo
Cambie la interfaz del equipo que será utilizada por 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 prototipo de métrica dependiente
Actualizar el prototipo de métrica dependiente con un nuevo ID de prototipo de métrica principal. Solo se permiten dependencias en el mismo equipo (plantilla/regla de descubrimiento), por lo tanto, la métrica principal y la dependiente deben tener el mismo hostid y ruleid.
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"master_itemid": "25570",
"itemid": "189030"
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"189030"
]
},
"id": 1
}
Actualizar prototipo de métrica de agente HTTP
Cambiar los campos de consulta y eliminar todas las cabeceras personalizadas.
{
"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 las opciones de preprocesamiento de la métrica
Actualice una plantilla 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
}
Actualizar un prototipo de métrica de script
Actualice un prototipo de métrica de script con un script diferente y elimine 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.