更新
描述
object itemprototype.update(object/array itemPrototypes)
此方法用于更新已存在的监控项原型。
此方法仅适用于管理员和超级管理员用户类型。可以在用户角色设置中撤销调用该方法的权限。了解更多信息请参见用户角色。
参数
(object/array)
要更新的监控项的属性。
每个的监控项的itemid
属性必须被定义,其他属性可选。只有被传递的属性才会更新,其他所有属性保持不变。
另外见标准监控项原型,此方法接受如下参数。
参数 | 类型 | 描述 |
---|---|---|
preprocessing | array | 监控项原型预处理 要替换的当前监控项预处理选项。 参数行为: - 对继承对象是只读 |
tags | array | 监控项原型标签。 |
返回值
(object)
返回一个对象,其中包含 itemids
属性下更新的监控项原型的 ID。
示例
修改监控项原型接口
修改自动发现监控项的主机接口。
请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid": "27428",
"interfaceid": "132"
},
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"27428"
]
},
"id": 1
}
更新依赖监控项原型
使用新主监控项原型ID更新依赖监控项原型。 只允许依赖于同一主机(模板/发现规则)监控项原型,因此主监控项原型和依赖监控项原型应具有相同的 hostid 和 ruleid。
请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"master_itemid": "25570",
"itemid": "189030"
},
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"189030"
]
},
"id": 1
}
更新HTTP代理监控项原型
修改查询字段和移除所有自定义的头部。
请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid":"28305",
"query_fields": [
{
"name": "random",
"value": "qwertyuiopasdfghjklzxcvbnm"
}
],
"headers": []
}
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"28305"
]
},
"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",
"result": {
"itemids": [
"44211"
]
},
"id": 1
}
更新监控项原型脚本
使用不同的脚本更新监控项原型脚本,删除先前脚本使用的不必要参数。
请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid": "23865",
"parameters": [],
"script": "Zabbix.log(3, 'Log test');\nreturn 1;"
},
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"23865"
]
},
"id": 1
}
来源
CItemPrototype::update() in ui/include/classes/api/services/CItemPrototype.php.