[comment]: # translation:outdated

[comment]: # ({8246351f-8246351f})
# 获取监控项原型

[comment]: # ({/8246351f-8246351f})

[comment]: # ({dd4de146-5f97ef4a})
### 描述

`integer/array itemprototype.get(object parameters)`

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

::: noteclassic
任何类型的用户都可以使用此方法。权限可以在用户角色设置中撤消调用该方法。了解更多信息可以参见[用户角色](/manual/web_interface/frontend_sections/administration/User_roles)。
:::

[comment]: # ({/dd4de146-5f97ef4a})

[comment]: # ({59ab24ec-8d6ecc79})
### 参数

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

该方法支持以下参数。

|参数|[类型](/manual/api/reference_commentary#数据类型)|说明|
|---------|---------------------------------------------------|-----------|
|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](/manual/api/reference/discoveryrule/object#lld_rule) 属性。|
|selectGraphs|query|返回一个 [manual/api/reference/graphprototype/object\#graph\_prototype](/manual/api/reference/graphprototype/object#graph_prototype) 属性，其中包含使用监控项原型的图形原型。< br><br>支持`count`。|
|selectHosts|query|返回一个 [hosts](/manual/api/reference/host/object) 属性，其中包含监控项原型所属的主机数组。|
|selectTags|query|返回 [tags](/manual/api/reference/itemprototype/object#Item_prototype_tag) 属性中的监控项原型标签。|
|selectTriggers|query|返回一个 [triggers](/manual/api/reference/triggerprototype/object#trigger_prototype) 属性，其中包含使用监控项原型的触发器原型。<br><br>支持`count`。|
|selectPreprocessing|query|返回带有监控项预处理选项的 [preprocessing](/manual/api/reference/item/object#item_preprocessing) 属性。<br><br>它具有以下属性：<br>`type` - ` (string)` 预处理选项类型：<br>1 - 自定义乘数;<br>2 - 右修剪;<br>3 - 左修剪;<br>4 - 修剪;<br>5 - 正则表达式匹配;< br>6 - 布尔到十进制；<br>7 - 八进制到十进制；<br>8 - 十六进制到十进制；<br>9 - 简单更改；<br>10 - 每秒更改；<br>11 - XML XPath ;<br>12 - JSONPath;<br>13 - 在范围内;<br>14 - 匹配正则表达式;<br>15 - 不匹配正则表达式;<br>16 - 检查 JSON 中的错误;<br> 17 - 检查 XML 中的错误；<br>18 - 使用正则表达式检查错误；<br>19 - 丢弃未更改；<br>20 - 丢弃未更改的心跳；<br>21 - JavaScript；<br>22 - Prometheus 模式；<br>23 - Prometheus 到 JSON；<br>24 - CSV 到 JSON；<br>25 - 替换；<br>26 - 检查不支持的值；<br>27- XML 到 JSON。<br ><br>`params` - `(str ing)` 预处理选项使用的附加参数。多个参数由 LF (\\n) 字符分隔。<br>`error_handler` - `(string)` 预处理步骤失败时使用的操作类型：<br>0 - Zabbix 服务器设置错误消息；<br >1 - 丢弃值；<br>2 - 设置自定义值；<br>3 - 设置自定义错误消息。<br><br>`error_handler_params` - `(string)` 错误处理程序参数。|
|selectValueMap|query|返回带有监控项原型值映射的 [valuemap](/manual/api/reference/valuemap/object) 属性。|
|filter|object|只返回与给定过滤器完全匹配的结果。<br><br>接受一个数组，其中键是属性名称，值是单个值或要匹配的值数组。 <br><br>支持额外的过滤器：<br>`host` - 监控项原型所属的主机的技术名称。|
|limitSelects|integer|限制子选择返回的记录数。<br><br>适用于以下子选择：<br>`selectGraphs` - 结果将按`name`排序；<br>`selectTriggers` - 结果将按“描述”排序。|
|sortfield|string/array|按给定属性对结果进行排序。<br><br>可能的值有：`itemid`、`name`、`key_`、`delay`、`type` 和 `status`。|
|countOutput|boolean|这些参数对所有 `get` 方法都是通用的，在 [参考评论](/manual/api/reference_commentary#common_get_method_parameters) 中有详细描述。|
|可编辑|布尔|^|
|排除搜索|布尔|^|
|限制|整数|^|
|输出|查询|^|
|preservekeys|布尔值|^|
|搜索|对象|^|
|searchByAny|布尔值|^|
|searchWildcardsEnabled|布尔值|^|
|排序|字符串/数组|^|
|开始搜索|布尔值|^|

[comment]: # ({/59ab24ec-8d6ecc79})

[comment]: # ({7223bab1-7223bab1})
### 返回值

`(integer/array)` 返回其中之一：

-   一个对象数组；
-   如果使用`countOutput`参数，返回被检索对象的数量。

[comment]: # ({/7223bab1-7223bab1})

[comment]: # ({b41637d2-b41637d2})
### 案例

[comment]: # ({/b41637d2-b41637d2})

[comment]: # ({5f7cd0e4-92651f4c})
#### 返回低级别规则发现的监控项原型

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

请求:

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

返回:

``` {.java}
{
 · "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
}
```

[comment]: # ({/5f7cd0e4-92651f4c})

[comment]: # ({e7e7e249-acb23a7a})
#### 查找依赖监控项

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

请求:

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

Response:

``` {.java}
{
 · "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
}
```

[comment]: # ({/e7e7e249-acb23a7a})

[comment]: # ({29f19fca-18563427})
#### 查找HTTP代理监控项原型

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

请求:

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

返回:

``` {.java}
{
 · "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
}
```

[comment]: # ({/29f19fca-18563427})

[comment]: # ({2949a703-b9b138b8})
### 参见

- [主机](/manual/api/reference/host/object#host)
- [图形原型](/manual/api/reference/graphprototype/object#graph_prototype)
- [触发器原型](/manual/api/reference/triggerprototype/object#trigger_prototype)

[comment]: # ({/2949a703-b9b138b8})

[comment]: # ({e1523143-e1523143})
### 来源

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

[comment]: # ({/e1523143-e1523143})
