object itemprototype.create(object/array itemPrototypes)
该方法允许创建监控项原型。
此方法仅适用于管理员和超级管理员用户类型。可以在用户角色设置中撤销调用该方法的权限。了解更多信息请参见用户角色
(object/array)
需要创建的监控项原型。
除标准监控项原型外,该方法还接受以下参数。
返回一个对象(object)
,该对象包含在 itemids
属性下创建的监控项原型的 IDs。返回的 IDs 的顺序与传递的项目原型的顺序相匹配。
创建一个监控项原型以监控发现的文件系统中的空闲磁盘空间。发现的监控项应该是数值类型的Zabbix agent监控项,每30秒更新一次。
请求:
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"name": "Free disk space on {#FSNAME}",
"key_": "vfs.fs.size[{#FSNAME},free]",
"hostid": "10197",
"ruleid": "27665",
"type": 0,
"value_type": 3,
"interfaceid": "112",
"delay": "30s"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
响应:
先创建一个监控项,第二步在预处理中使用每秒更改和自定义乘数。
请求:
{
· "jsonrpc": "2.0",
· "method": "itemprototype.create",
· "params": {
· "name": "Incoming network traffic on {#IFNAME}",
· "key_": "net.if.in[{#IFNAME}]",
· "hostid": "10001",
· "ruleid": "27665",
· "type": 0,
· "value_type": 3,
· "delay": "60s",
· "units": "bps",
· "interfaceid": "1155",
· "preprocessing": [
· {
· "type": "10",
· "params": "",
· "error_handler": "0",
· "error_handler_params": ""
· },
· {
· "type": "1",
· "params": "8",
· "error_handler": "2",
· "error_handler_params": "10"
· }
· ]
· },
· "auth": "038e1d7b1735c6a5436ee9eae095879e",
· "id": 1
}
返回:
创建依赖与ID 44211监控项原型的监控项原型。 只允许依赖一些主机(模板/发现规则),因此主要监控项和依赖监控项应该具有相同的 hostid 和 ruleid。
请求:
{
· "jsonrpc": "2.0",
· "method": "itemprototype.create",
· "params": {
· "hostid": "10001",
· "ruleid": "27665",
· "name": "Dependent test item prototype",
· "key_": "dependent.prototype",
· "type": "18",
· "master_itemid": "44211",
· "value_type": "3"
· },
· "auth": "038e1d7b1735c6a5436ee9eae095879e",
· "id": 1
}
返回:
使用用户宏、查询字段和自定义头部创建带有URL的监控项原型。
请求:
{
· "jsonrpc": "2.0",
· "method": "itemprototype.create",
· "params": {
· "type": "19",
· "hostid": "10254",
· "ruleid":"28256",
· "interfaceid":"2",
· "name": "api item prototype example",
· "key_": "api_http_item",
· "value_type": "3",
· "url": "{$URL_PROTOTYPE}",
· "query_fields": [
· {
· "min": "10"
· },
· {
· "max": "100"
· }
· ],
· "headers": {
· "X-Source": "api"
· },
· "delay":"35"
· },
· "auth": "038e1d7b1735c6a5436ee9eae095879e",
· "id": 1
}
返回:
使用脚本监控项原型创建一个简单的数据集合。
请求:
{
· "jsonrpc": "2.0",
· "method": "itemprototype.create",
· "params": {
· "name": "Script example",
· "key_": "custom.script.itemprototype",
· "hostid": "12345",
· "type": 21,
· "value_type": 4,
· "params": "var request = new CurlHttpRequest();\nreturn request.Post(\"https://postman-echo.com/post\", JSON.parse(value));",
· "parameters": [{
· "name": "host",
· "value": "{HOST.CONN}"
· }],
· "timeout": "6s",
· "delay": "30s"
· },
· "auth": "038e1d7b1735c6a5436ee9eae095879e",
· "id": 2
}
返回:
CItemPrototype::create() in ui/include/classes/api/services/CItemPrototype.php.