object item.update(object/array items)
此方法用于 update 现有的 监控项。
Web 监控项 无法通过 Zabbix API 进行更新。
此方法仅对 Admin 和 Super admin 用户类型可用。调用该方法的权限可以在用户角色设置中撤销。更多信息请参见 User roles。
(object/array)
监控项 属性将被更新。
对于每个 监控项,必须定义 itemid
属性,所有其他属性是可选的。仅传递的属性将被更新,其余属性将保持不变。
除了 监控项 之外,该方法还接受以下参数。
参数 | 数据类型 | 描述 |
---|---|---|
preprocessing | array | 预处理 选项,用于替换当前的预处理选项。 参数行为: - 对于继承的 objects 或发现的 objects 为只读 |
tags | array | 监控项-标签。 参数行为: - 对于发现的 objects 为只读 |
(object)
返回一个 object,其中包含更新后的 监控项 的 ID,这些 ID 位于 itemids
属性下。
启用一个 监控项,即将其状态设置为 "0"。
执行请求:
{
"jsonrpc": "2.0",
"method": "item.update",
"params": {
"itemid": "10092",
"status": 0
},
"id": 1
}
响应:
更新从属 监控项 名称和主控 监控项 ID。仅允许在同一 主机 上的依赖关系,因此主控和从属 监控项 应具有相同的 hostid。
执行请求:
{
"jsonrpc": "2.0",
"method": "item.update",
"params": {
"name": "Dependent item updated name",
"master_itemid": "25562",
"itemid": "189019"
},
"id": 1
}
响应:
启用 监控项 值捕获。
执行请求:
{
"jsonrpc": "2.0",
"method": "item.update",
"params": {
"itemid": "23856",
"allow_traps": 1
},
"id": 1
}
响应:
使用预处理规则"范围内"更新一个监控项与监控项
执行请求:
{
"jsonrpc": "2.0",
"method": "item.update",
"params": {
"itemid": "23856",
"preprocessing": [
{
"type": 13,
"params": "\n100",
"error_handler": 1,
"error_handler_params": ""
}
]
},
"id": 1
}
响应
使用不同的脚本更新脚本 监控项,并删除之前脚本使用的不必要的参数。
执行请求:
{
"jsonrpc": "2.0",
"method": "item.update",
"params": {
"itemid": "23865",
"parameters": [],
"script": "Zabbix.log(3, 'Log test');\nreturn 1;"
},
"id": 1
}
响应:
CItem::update() 在 ui/include/classes/api/services/CItem.php 中。