item.update

描述

object item.update(object/array items)

此方法允许更新现有的监控项。

Web 监控项无法通过Zabbix API进行更新。

此方法仅适用于管理员超级管理员用户类型。调用该方法的权限可在用户角色设置中撤销。更多信息请参阅User roles

参数

(object/array) 监控项 待更新属性。

每个监控项必须定义itemid属性,其余属性均为可选。仅传递的属性会被更新,其他属性将保持不变。

监控项外,该方法还接受以下参数。

参数 数据类型 说明
preprocessing array 用于替换当前预处理选项的预处理选项
tags array 监控项的监控项-标签

返回值

(object) 返回一个包含更新后itemids属性下监控项 ID的object

示例

启用 监控项

启用一个监控项,即将其状态设置为"0"。

请求:

{
           "jsonrpc": "2.0",
           "method": "item.update",
           "params": {
               "itemid": "10092",
               "status": 0
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "10092"
               ]
           },
           "id": 1
       }

更新依赖的 监控项

更新依赖监控项名称与主监控项ID。仅允许相同主机上的依赖关系,因此主监控项与依赖监控项应具有相同的hostid。

请求:

{
           "jsonrpc": "2.0",
           "method": "item.update",
           "params": {
               "name": "Dependent item updated name",
               "master_itemid": "25562",
               "itemid": "189019"
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "189019"
               ]
           },
           "id": 1
       }

更新 HTTP agent 监控项

启用监控项值捕获功能。

请求:

{
           "jsonrpc": "2.0",
           "method": "item.update",
           "params": {
               "itemid": "23856",
               "allow_traps": 1
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "23856"
               ]
           },
           "id": 1
       }

更新带有预处理的 监控项

使用预处理规则"范围内"更新监控项。

请求:

{
           "jsonrpc": "2.0",
           "method": "item.update",
           "params": {
               "itemid": "23856",
               "preprocessing": [
                   {
                       "type": 13,
                       "params": "\n100",
                       "error_handler": 1,
                       "error_handler_params": ""
                   }
               ]
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "23856"
               ]
           },
           "id": 1
       }

更新脚本 监控项

更新脚本监控项并使用不同的脚本,移除先前脚本中不必要的参数。

请求:

{
           "jsonrpc": "2.0",
           "method": "item.update",
           "params": {
               "itemid": "23865",
               "parameters": [],
               "script": "Zabbix.Log(3, 'Log test');\nreturn 1;"
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "23865"
               ]
           },
           "id": 1
       }

CItem::update() 位于 ui/include/classes/api/services/CItem.php 文件中。