创建

描述

object task.create(object/array tasks)

该方法允许创建新任务(例如收集诊断数据或检查监控项或低级别发现规则,而无需重新加载配置)。

这个方法只有 超级管理员 用户类型可以使用。在用户角色设置中可用撤销掉用该方法的权限。查看用户角色获取更多信息。

参数

(object/array) 任务创建。

该方法接受具有 标准任务属性.

请注意,‘立即执行’ 任务只能针对以下类型的项目/发现规则创建:

  • Zabbix agent
  • SNMPv1/v2/v3 agent
  • Simple check
  • Internal check
  • External check
  • Database monitor
  • HTTP agent
  • IPMI agent
  • SSH agent
  • TELNET agent
  • Calculated check
  • JMX agent
  • Dependent item

如果监控项或发现规则是“依赖项目”的类型,则顶级主项目必须是以下类型之一:

  • Zabbix agent
  • SNMPv1/v2/v3 agent
  • Simple check
  • Internal check
  • External check
  • Database monitor
  • HTTP agent
  • IPMI agent
  • SSH agent
  • TELNET agent
  • Calculated check
  • JMX agent

返回值

(object)taskids 属性下返回一个包含创建的任务ID的对象。每个监控项和低级别发现规则都会创建一个任务。返回的ID顺序与传递的 itemids 的顺序相匹配。

示例

创建任务

给两个监控项创建一个 立即执行 的任务。一个是一个监控项,另一个是一个低级别发现规则。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "task.create",
  4. "params": [
  5. {
  6. "type": 6,
  7. "request": {
  8. "itemid": "10092"
  9. }
  10. },
  11. {
  12. "type": 6,
  13. "request": {
  14. "itemid": "10093"
  15. }
  16. }
  17. ],
  18. "id": 1
  19. }

响应:

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

为2个Proxy 创建任务 刷新代理配置

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "task.create",
  4. "params": [
  5. {
  6. "type": 2,
  7. "request": {
  8. "proxyids": ["10459", "10460"]
  9. }
  10. }
  11. ],
  12. "id": 1
  13. }

响应:

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

创建任务 诊断信息

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "task.create",
  4. "params": [
  5. {
  6. "type": 1,
  7. "request": {
  8. "alerting": {
  9. "stats": [
  10. "alerts"
  11. ],
  12. "top": {
  13. "media.alerts": 10
  14. }
  15. },
  16. "lld": {
  17. "stats": "extend",
  18. "top": {
  19. "values": 5
  20. }
  21. }
  22. },
  23. "proxyid": 0
  24. }
  25. ],
  26. "id": 1
  27. }

响应:

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

参阅

来源

CTask::create() 在 ui/include/classes/api/services/CTask.php.