object itemprototype.update(object/array itemPrototypes)
此方法用于 update 现有的 监控项原型。
此方法仅适用于 管理员 和 超级管理员 用户类型。调用该方法的权限可以在用户角色设置中撤销。更多信息请参见 User roles。
(object/array)
更新要修改的监控项原型属性。
每个监控项原型必须定义itemid
属性,所有其他属性是可选的。仅更新传递的属性,其余属性保持不变。
除了监控项原型外,该方法还接受以下参数。
(object)
返回一个 object,其中包含更新后的 监控项 原型的 ID,这些 ID 位于 itemids
属性下。
更改发现的 监控项 将使用的 主机 接口。
执行请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid": "27428",
"interfaceid": "132"
},
"id": 1
}
响应:
更新依赖监控项原型的主监控项原型ID。仅 允许在同一主机(模板/发现规则)上设置依赖关系 因此主节点和从属节点的监控项应具有相同的hostid和ruleid。
执行请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"master_itemid": "25570",
"itemid": "189030"
},
"id": 1
}
响应:
更改 query 字段并移除所有自定义标题。
执行请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid":"28305",
"query_fields": [
{
"name": "random",
"value": "qwertyuiopasdfghjklzxcvbnm"
}
],
"headers": []
}
"id": 1
}
响应:
使用监控项预处理规则“自定义乘数”更新一个监控项原型。
执行请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid": "44211",
"preprocessing": [
{
"type": 1,
"params": "4",
"error_handler": 2,
"error_handler_params": "5"
}
]
},
"id": 1
}
响应:
使用不同的脚本更新脚本监控项原型,并删除之前脚本使用的不必要的参数。
执行请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid": "23865",
"parameters": [],
"script": "Zabbix.log(3, 'Log test');\nreturn 1;"
},
"id": 1
}
响应:
CItemPrototype::update() 在 ui/include/classes/api/services/CItemPrototype.php 中。