这是原厂英文文档的翻译页面. 欢迎帮助我们 完善文档.
2022 Zabbix中国峰会
2022 Zabbix中国峰会

获取监控项原型

描述

integer/array itemprototype.get(object parameters)

该方法允许根据给定的参数检索监控项原型。

任何类型的用户都可以使用此方法。权限可以在用户角色设置中撤消调用该方法。了解更多信息可以参见用户角色

参数

(object) 定义所需输出的参数。

该方法支持以下参数。

参数 类型 说明
discoveryids string/array 只返回属于给定 LLD 规则的监控项原型。
graphids string/array 只返回给定图形原型中使用的监控项原型。
hostids string/array 只返回属于给定主机的监控项原型。
inherited boolean 如果设置为 true,则仅返回从模板继承的监控项原型。
itemids string/array 只返回给定 ID 的监控项原型。
monitored boolean 如果设置为 true,则仅返回属于受监控主机的已启用监控项原型。
templated boolean 如果设置为 true,则仅返回属于模板的监控项原型。
templateids string/array 只返回属于给定模板的监控项原型。
triggerids string/array 只返回给定触发器原型中使用的监控项原型。
selectDiscoveryRule query 返回带有监控项原型所属的低级发现规则的 discoveryRule 属性。
selectGraphs query 返回一个 manual/api/reference/graphprototype/object#graph_prototype 属性,其中包含使用监控项原型的图形原型。< br>
支持count
selectHosts query 返回一个 hosts 属性,其中包含监控项原型所属的主机数组。
selectTags query 返回 tags 属性中的监控项原型标签。
selectTriggers query 返回一个 triggers 属性,其中包含使用监控项原型的触发器原型。

支持count
selectPreprocessing query 返回带有监控项预处理选项的 preprocessing 属性。

它具有以下属性:
type - (string) 预处理选项类型:
1 - 自定义乘数;
2 - 右修剪;
3 - 左修剪;
4 - 修剪;
5 - 正则表达式匹配;< br>6 - 布尔到十进制;
7 - 八进制到十进制;
8 - 十六进制到十进制;
9 - 简单更改;
10 - 每秒更改;
11 - XML XPath ;
12 - JSONPath;
13 - 在范围内;
14 - 匹配正则表达式;
15 - 不匹配正则表达式;
16 - 检查 JSON 中的错误;
17 - 检查 XML 中的错误;
18 - 使用正则表达式检查错误;
19 - 丢弃未更改;
20 - 丢弃未更改的心跳;
21 - JavaScript;
22 - Prometheus 模式;
23 - Prometheus 到 JSON;
24 - CSV 到 JSON;
25 - 替换;
26 - 检查不支持的值;
27- XML 到 JSON。<br >
params - (str ing) 预处理选项使用的附加参数。多个参数由 LF (\n) 字符分隔。
error_handler - (string) 预处理步骤失败时使用的操作类型:
0 - Zabbix 服务器设置错误消息;<br >1 - 丢弃值;
2 - 设置自定义值;
3 - 设置自定义错误消息。

error_handler_params - (string) 错误处理程序参数。
selectValueMap query 返回带有监控项原型值映射的 valuemap 属性。
filter object 只返回与给定过滤器完全匹配的结果。

接受一个数组,其中键是属性名称,值是单个值或要匹配的值数组。

支持额外的过滤器:
host - 监控项原型所属的主机的技术名称。
limitSelects integer 限制子选择返回的记录数。

适用于以下子选择:
selectGraphs - 结果将按name排序;
selectTriggers - 结果将按“描述”排序。
sortfield string/array 按给定属性对结果进行排序。

可能的值有:itemidnamekey_delaytypestatus
countOutput boolean 这些参数对所有 get 方法都是通用的,在 参考评论 中有详细描述。
可编辑 布尔
排除搜索 布尔
限制 整数
输出 查询
preservekeys 布尔值
搜索 对象
searchByAny 布尔值
searchWildcardsEnabled 布尔值
排序 字符串/数组
开始搜索 布尔值

返回值

(integer/array) 返回其中之一:

  • 一个对象数组;
  • 如果使用countOutput参数,返回被检索对象的数量。

案例

返回低级别规则发现的监控项原型

返回所有低级别规则发现的监控项原型。

请求:

{
        · "jsonrpc": "2.0",
        · "method": "itemprototype.get",
        · "params": {
        · "output": "extend",
        · "discoveryids": "27426"
        · },
        · "auth": "038e1d7b1735c6a5436ee9eae095879e",
        · "id": 1
       }

返回:

{
        · "jsonrpc": "2.0",
        · "result": [
        · {
        · "itemid": "23077",
        · "type": "0",
        · "snmp_oid": "",
        · "hostid": "10079",
        · "name": "Incoming network traffic on en0",
        · "key_": "net.if.in[en0]",
        · "delay": "1m",
        · "history": "1w",
        · "trends": "365d",
        · "status": "0",
        · "value_type": "3",
        · "trapper_hosts": "",
        · "units": "bps",
        · "formula": "",
        · "error": "",
        · "logtimefmt": "",
        · "templateid": "0",
        · "valuemapid": "0",
        · "params": "",
        · "ipmi_sensor": "",
        · "authtype": "0",
        · "username": "",
        · "password": "",
        · "publickey": "",
        · "privatekey": "",
        · "flags": "0",
        · "interfaceid": "0",
        · "description": "",
        · "inventory_link": "0",
        · "lifetime": "30d",
        · "state": "0",
        · "evaltype": "0",
        · "jmx_endpoint": "",
        · "master_itemid": "0",
        · "timeout": "3s",
        · "url": "",
        · "query_fields": [],
        · "posts": "",
        · "status_codes": "200",
        · "follow_redirects": "1",
        · "post_type": "0",
        · "http_proxy": "",
        · "headers": [],
        · "retrieve_mode": "0",
        · "request_method": "0",
        · "output_format": "0",
        · "ssl_cert_file": "",
        · "ssl_key_file": "",
        · "ssl_key_password": "",
        · "verify_peer": "0",
        · "verify_host": "0",
        · "allow_traps": "0",
        · "lastclock": "0",
        · "lastns": "0",
        · "lastvalue": "0",
        · "prevvalue": "0",
        · "discover": "0",
        · "parameters": []
        · },
        · {
        · "itemid": "10010",
        · "type": "0",
        · "snmp_oid": "",
        · "hostid": "10001",
        · "name": "Processor load (1 min average per core)",
        · "key_": "system.cpu.load[percpu,avg1]",
        · "delay": "1m",
        · "history": "1w",
        · "trends": "365d",
        · "status": "0",
        · "value_type": "0",
        · "trapper_hosts": "",
        · "units": "",
        · "formula": "",
        · "error": "",
        · "logtimefmt": "",
        · "templateid": "0",
        · "valuemapid": "0",
        · "params": "",
        · "ipmi_sensor": "",
        · "authtype": "0",
        · "username": "",
        · "password": "",
        · "publickey": "",
        · "privatekey": "",
        · "flags": "0",
        · "interfaceid": "0",
        · "description": "The processor load is calculated as system CPU load divided by number of CPU cores.",
        · "inventory_link": "0",
        · "lifetime": "0",
        · "state": "0",
        · "evaltype": "0",
        · "jmx_endpoint": "",
        · "master_itemid": "0",
        · "timeout": "3s",
        · "url": "",
        · "query_fields": [],
        · "posts": "",
        · "status_codes": "200",
        · "follow_redirects": "1",
        · "post_type": "0",
        · "http_proxy": "",
        · "headers": [],
        · "retrieve_mode": "0",
        · "request_method": "0",
        · "output_format": "0",
        · "ssl_cert_file": "",
        · "ssl_key_file": "",
        · "ssl_key_password": "",
        · "verify_peer": "0",
        · "verify_host": "0",
        · "allow_traps": "0",
        · "lastclock": "0",
        · "lastns": "0",
        · "lastvalue": "0",
        · "prevvalue": "0",
        · "discover": "0",
        · "parameters": []
        · }
        · ],
        · "id": 1
       }

查找依赖监控项

查找监控项ID “25545”的依赖监控项。

请求:

{
        · "jsonrpc": "2.0",
        · "method": "item.get",
        · "params": {
        · "output": "extend",
        · "filter": {
        · "type": "18",
        · "master_itemid": "25545"
        · },
        · "limit": "1"
        · },
        · "auth": "038e1d7b1735c6a5436ee9eae095879e",
        · "id": 1
       }

Response:

{
        · "jsonrpc": "2.0",
        · "result": [
        · {
        · "itemid": "25547",
        · "type": "18",
        · "snmp_oid": "",
        · "hostid": "10116",
        · "name": "Seconds",
        · "key_": "apache.status.uptime.seconds",
        · "delay": "0",
        · "history": "90d",
        · "trends": "365d",
        · "status": "0",
        · "value_type": "3",
        · "trapper_hosts": "",
        · "units": "",
        · "formula": "",
        · "error": "",
        · "logtimefmt": "",
        · "templateid": "0",
        · "valuemapid": "0",
        · "params": "",
        · "ipmi_sensor": "",
        · "authtype": "0",
        · "username": "",
        · "password": "",
        · "publickey": "",
        · "privatekey": "",
        · "flags": "0",
        · "interfaceid": "0",
        · "description": "",
        · "inventory_link": "0",
        · "lifetime": "30d",
        · "state": "0",
        · "evaltype": "0",
        · "master_itemid": "25545",
        · "jmx_endpoint": "",
        · "master_itemid": "0",
        · "timeout": "3s",
        · "url": "",
        · "query_fields": [],
        · "posts": "",
        · "status_codes": "200",
        · "follow_redirects": "1",
        · "post_type": "0",
        · "http_proxy": "",
        · "headers": [],
        · "retrieve_mode": "0",
        · "request_method": "0",
        · "output_format": "0",
        · "ssl_cert_file": "",
        · "ssl_key_file": "",
        · "ssl_key_password": "",
        · "verify_peer": "0",
        · "verify_host": "0",
        · "allow_traps": "0",
        · "lastclock": "0",
        · "lastns": "0",
        · "lastvalue": "0",
        · "prevvalue": "0",
        · "discover": "0",
        · "parameters": []
        · }
        · ],
        · "id": 1
       }

查找HTTP代理监控项原型

通过指定主机id的请求头部方法查找HTTP代理监控项原型。

请求:

{
        · "jsonrpc": "2.0",
        · "method": "itemprototype.get",
        · "params": {
        · "hostids": "10254",
        · "filter": {
        · "type": "19",
        · "request_method": "3"
        · }
        · },
        · "id": 17,
        · "auth": "d678e0b85688ce578ff061bd29a20d3b"
       }

返回:

{
        · "jsonrpc": "2.0",
        · "result": [
        · {
        · "itemid": "28257",
        · "type": "19",
        · "snmp_oid": "",
        · "hostid": "10254",
        · "name": "discovered",
        · "key_": "item[{#INAME}]",
        · "delay": "{#IUPDATE}",
        · "history": "90d",
        · "trends": "30d",
        · "status": "0",
        · "value_type": "3",
        · "trapper_hosts": "",
        · "units": "",
        · "formula": "",
        · "error": "",
        · "logtimefmt": "",
        · "templateid": "28255",
        · "valuemapid": "0",
        · "params": "",
        · "ipmi_sensor": "",
        · "authtype": "0",
        · "username": "",
        · "password": "",
        · "publickey": "",
        · "privatekey": "",
        · "flags": "2",
        · "interfaceid": "2",
        · "description": "",
        · "inventory_link": "0",
        · "lifetime": "30d",
        · "state": "0",
        · "evaltype": "0",
        · "jmx_endpoint": "",
        · "master_itemid": "0",
        · "timeout": "3s",
        · "url": "{#IURL}",
        · "query_fields": [],
        · "posts": "",
        · "status_codes": "",
        · "follow_redirects": "0",
        · "post_type": "0",
        · "http_proxy": "",
        · "headers": [],
        · "retrieve_mode": "0",
        · "request_method": "3",
        · "output_format": "0",
        · "ssl_cert_file": "",
        · "ssl_key_file": "",
        · "ssl_key_password": "",
        · "verify_peer": "0",
        · "verify_host": "0",
        · "allow_traps": "0",
        · "discover": "0",
        · "parameters": []
        · }
        · ],
        · "id": 17
       }

参见

来源

CItemPrototype::get() in ui/include/classes/api/services/CItemPrototype.php.