创建

说明

object item.create(object/array **items**)

此方法允许创建监控项。

WEB 监控项不能通过Zabbix API创建。

参数

(object/array) 要创建的监控项。

另外见standard item properties,此方法接受如下参数。

属性类型说明
applicationsarray要添加到监控项的应用IDs。
preprocessingarray监控项预处理选项。

返回值

(object)itemids属性下返回包含已创建的监控项的对象的IDs。返回的IDs的顺序与传递的监控项的IDs的顺序一致。

示例

创建一个监控项

创建一个数字类型的Zabbix agent监控项监控ID为“30074”的主机的可用磁盘空间并添加到2个应用[“609”, “610”]。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "item.create",
  4. "params": {
  5. "name": "Free disk space on $1",
  6. "key_": "vfs.fs.size[/home/joe/,free]",
  7. "hostid": "30074",
  8. "type": 0,
  9. "value_type": 3,
  10. "interfaceid": "30084",
  11. "applications": [
  12. "609",
  13. "610"
  14. ],
  15. "delay": "30s"
  16. },
  17. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  18. "id": 1
  19. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "itemids": [
  5. "24758"
  6. ]
  7. },
  8. "id": 1
  9. }

创建一个主机清单监控项

创建一个Zabbix agent监控项填充主机的“OS“清单字段。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "item.create",
  4. "params": {
  5. "name": "uname",
  6. "key_": "system.uname",
  7. "hostid": "30021",
  8. "type": 0,
  9. "interfaceid": "30007",
  10. "value_type": 1,
  11. "delay": "10s",
  12. "inventory_link": 5
  13. },
  14. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  15. "id": 1
  16. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "itemids": [
  5. "24759"
  6. ]
  7. },
  8. "id": 1
  9. }

创建带有预处理的监控项

使用自定义乘法器创建监控项。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "item.create",
  4. "params": {
  5. "name": "Device uptime",
  6. "key_": "sysUpTime",
  7. "hostid": "11312",
  8. "type": 4,
  9. "snmp_oid": "SNMPv2-MIB::sysUpTime.0",
  10. "value_type": 1,
  11. "delay": "60s",
  12. "units": "uptime",
  13. "interfaceid": "1156",
  14. "preprocessing": [
  15. {
  16. "type": "1",
  17. "params": "0.01",
  18. "error_handler": "1",
  19. "error_handler_params": ""
  20. }
  21. ]
  22. },
  23. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  24. "id": 1
  25. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "itemids": [
  5. "44210"
  6. ]
  7. },
  8. "id": 1
  9. }

创建依赖监控项

为ID为24759的主监控项创建依赖监控项。仅依同一主机的以来监控项被允许,因此主监控项和依赖监控应有相同的hostid。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "item.create",
  4. "params": {
  5. "hostid": "30074",
  6. "name": "Dependent test item",
  7. "key_": "dependent.item",
  8. "type": "18",
  9. "master_itemid": "24759",
  10. "value_type": "2"
  11. },
  12. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  13. "id": 1
  14. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "itemids": [
  5. "44211"
  6. ]
  7. },
  8. "id": 1
  9. }

创建HTTP agent监控项

创建带有JSON响应预处理的POST请求的方法监控项。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "item.create",
  4. "params": {
  5. "url":"http://127.0.0.1/http.php",
  6. "query_fields": [
  7. {
  8. "mode":"json"
  9. },
  10. {
  11. "min": "10"
  12. },
  13. {
  14. "max": "100"
  15. }
  16. ],
  17. "interfaceid": "1",
  18. "type":"19",
  19. "hostid":"10254",
  20. "delay":"5s",
  21. "key_":"json",
  22. "name":"http agent example JSON",
  23. "value_type":"0",
  24. "output_format":"1",
  25. "preprocessing": [
  26. {
  27. "type": "12",
  28. "params": "$.random"
  29. }
  30. ]
  31. },
  32. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  33. "id": 2
  34. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "itemids": [
  5. "23865"
  6. ]
  7. },
  8. "id": 3
  9. }

来源

CItem::create() in frontends/php/include/classes/api/services/CItem.php.