item.create
Descripción
object item.create(object/array items)
Este método permite crear nuevos items.
Los items web no pueden crearse a través de la API de Zabbix.
Este método solo está disponible para los tipos de usuario Admin y Super admin. Los permisos para llamar al método pueden revocarse en la configuración del rol de usuario. Consulte Roles de usuario para obtener más información.
Parámetros
(object/array) Items a crear.
Además de las propiedades estándar del item, el método acepta los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| preprocessing | array | Opciones de preprocesamiento del item. |
| tags | array | Etiquetas del item. |
Valores de retorno
(object) Devuelve un objeto que contiene los IDs de los items creados bajo la propiedad itemids.
El orden de los IDs devueltos coincide con el orden de los items pasados.
Ejemplos
Creación de una métrica
Cree una métrica de agente Zabbix numérica con 2 etiquetas de métrica para monitorear el espacio libre en disco en el equipo con ID "30074".
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"name": "Free disk space on /home/joe/",
"key_": "vfs.fs.size[/home/joe/,free]",
"hostid": "30074",
"type": 0,
"value_type": 3,
"interfaceid": "30084",
"tags": [
{
"tag": "component",
"value": "storage"
},
{
"tag": "equipment",
"value": "workstation"
}
],
"delay": "30s"
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"24758"
]
},
"id": 1
}
Creando un métrica de inventario de equipo
Cree una métrica de agente Zabbix para completar el campo de inventario "SO" del equipo.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"name": "uname",
"key_": "system.uname",
"hostid": "30021",
"type": 0,
"interfaceid": "30007",
"value_type": 1,
"delay": "10s",
"inventory_link": 5
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"24759"
]
},
"id": 1
}
Crear un item con preprocesamiento
Cree un item usando un multiplicador personalizado.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"name": "Device uptime",
"key_": "sysUpTime",
"hostid": "10084",
"type": 20,
"snmp_oid": "SNMPv2-MIB::sysUpTime.0",
"value_type": 1,
"delay": "60s",
"interfaceid": "83",
"preprocessing": [
{
"type": 1,
"params": "0.01",
"error_handler": 1,
"error_handler_params": ""
}
]
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"44210"
]
},
"id": 1
}
Creación de un item dependiente
Cree un item dependiente para el item maestro con ID 24759. Solo se permiten dependencias en el mismo host, por lo tanto, el item maestro y el dependiente deben tener el mismo hostid.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"hostid": "30074",
"name": "Dependent test item",
"key_": "dependent.item",
"type": 18,
"master_itemid": "24759",
"value_type": 2
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"44211"
]
},
"id": 1
}
Crear métrica de agente HTTP
Cree una métrica con método de solicitud POST con preprocesamiento de respuesta JSON.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"url":"http://127.0.0.1/http.php",
"query_fields": [
{
"name": "mode",
"value": "json"
},
{
"name": "min",
"value": "10"
},
{
"name": "max",
"value": "100"
}
],
"interfaceid": "1",
"type": 19,
"hostid": "10254",
"delay": "5s",
"key_": "json",
"name": "HTTP agent example JSON",
"value_type": 0,
"output_format": 1,
"preprocessing": [
{
"type": 12,
"params": "$.random",
"error_handler": 0,
"error_handler_params": ""
}
]
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"23865"
]
},
"id": 1
}
Crear una métrica de script
Cree una colección de datos simple utilizando una métrica de script.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"name": "Script example",
"key_": "custom.script.item",
"hostid": "12345",
"type": 21,
"value_type": 4,
"params": "var request = new HttpRequest();\nreturn request.post(\"https://postman-echo.com/post\", JSON.parse(value));",
"parameters": [
{
"name": "host",
"value": "{HOST.CONN}"
}
],
"timeout": "6s",
"delay": "30s"
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"23865"
]
},
"id": 1
}
Fuente
CItem::create() en ui/include/classes/api/services/CItem.php.