拓扑图创建

描述

object map.create(object/array maps)

这个方法允许创建一个新的拓扑图

此方法适用于任何类型的用户. 调用该方法的权限可以在用户角色设置中撤销. 请参阅用户角色了解更多信息.

参数

(object/array) 要创建的拓扑图。

除了标准拓扑图属性外,该方法还接受以下参数

参数类型说明
linksarray要在拓扑图上创建的拓扑图 links
selementsarray要在拓扑图上创建的拓扑图 元素
urlsarray要在拓扑图上创建的拓扑图 URLs
usersarray要在拓扑图上创建的拓扑图共享 user
userGroupsarray要在拓扑图上创建的拓扑图 用户组 共享。
shapesarray要在拓扑图上创建的拓扑图 shapes
linesarray要在拓扑图上创建的拓扑图 lines

:::noteclassic 要创建地图链接,您需要将地图元素 selementid 设置为任意值,然后使用此值在链接 selementid1 或 selementid2 属性中引用此元素。 创建元素时,该值将替换为 Zabbix 生成的正确 ID, 参考 :::

返回值

(对象)返回一个对象,该对象包含在”sysmapid”属性下创建的拓扑图的id。返回id的顺序与传递的拓扑图的顺序相匹配。

案例

创建一个空的拓扑图

创建一个没有任何元素的拓扑图

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "map.create",
  4. "params": {
  5. "name": "Map",
  6. "width": 600,
  7. "height": 600
  8. },
  9. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  10. "id": 1
  11. }

响应:

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

创建主机映射

创建一个包含两个主机元素和它们之间链接的拓扑图。 请注意在拓扑图链接对象中使用临时“selementid1”和“selementid2”值来引用拓扑图元素。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "map.create",
  4. "params": {
  5. "name": "Host map",
  6. "width": 600,
  7. "height": 600,
  8. "selements": [
  9. {
  10. "selementid": "1",
  11. "elements": [
  12. {"hostid": "1033"}
  13. ],
  14. "elementtype": 0,
  15. "iconid_off": "2"
  16. },
  17. {
  18. "selementid": "2",
  19. "elements": [
  20. {"hostid": "1037"}
  21. ],
  22. "elementtype": 0,
  23. "iconid_off": "2"
  24. }
  25. ],
  26. "links": [
  27. {
  28. "selementid1": "1",
  29. "selementid2": "2"
  30. }
  31. ]
  32. },
  33. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  34. "id": 1
  35. }

响应:

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

创建一个触发器拓扑图

创建一个包含两个触发器元素的拓扑图。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "map.create",
  4. "params": {
  5. "name": "Trigger map",
  6. "width": 600,
  7. "height": 600,
  8. "selements": [
  9. {
  10. "elements": [
  11. {"triggerid": "12345"},
  12. {"triggerid": "67890"}
  13. ],
  14. "elementtype": 2,
  15. "iconid_off": "2"
  16. }
  17. ]
  18. },
  19. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  20. "id": 1
  21. }

响应:

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

拓扑图分享

创建具有两种共享类型(用户和用户组)的拓扑图。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "map.create",
  4. "params": {
  5. "name": "Map sharing",
  6. "width": 600,
  7. "height": 600,
  8. "users": [
  9. {
  10. "userid": "4",
  11. "permission": "3"
  12. }
  13. ],
  14. "userGroups": [
  15. {
  16. "usrgrpid": "7",
  17. "permission": "2"
  18. }
  19. ]
  20. },
  21. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  22. "id": 1
  23. }

响应:

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

拓扑图形状

创建一个带有主题的拓扑图

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "map.create",
  4. "params": {
  5. "name": "Host map",
  6. "width": 600,
  7. "height": 600,
  8. "shapes": [
  9. {
  10. "type": 0,
  11. "x": 0,
  12. "y": 0,
  13. "width": 600,
  14. "height": 11,
  15. "text": "{MAP.NAME}"
  16. }
  17. ]
  18. },
  19. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  20. "id": 1
  21. }

响应:

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

拓扑图线

创建拓扑图线。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "map.create",
  4. "params": {
  5. "name": "Map API lines",
  6. "width": 500,
  7. "height": 500,
  8. "lines": [
  9. {
  10. "x1": 30,
  11. "y1": 10,
  12. "x2": 100,
  13. "y2": 50,
  14. "line_type": 1,
  15. "line_width": 10,
  16. "line_color": "009900"
  17. }
  18. ]
  19. },
  20. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  21. "id": 1
  22. }

响应:

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

查看相关

来源

CMap::create() in ui/include/classes/api/services/CMap.php.