object task.create(object/array tasks)
此方法允许创建新任务(例如收集诊断数据或检查监控项或无需重新加载配置的低级发现规则)。
此方法仅适用于超级管理员用户类型。 调用该方法的权限可在用户角色设置中撤销。更多信息请参阅 User roles。
(object/array)
待创建的任务。
该方法接受以下参数。
参数 | 数据类型 | 描述 |
---|---|---|
type (required) |
integer | 任务类型。 可选值: 1 - 诊断信息; 6 - 立即检查。 |
request (required) |
object | 根据任务类型的任务请求object。请求object的正确格式在Task object章节中描述。 |
proxy_hostid | integer | 诊断信息任务将收集数据的Proxy。 对于'立即检查'任务忽略此参数。 |
注意 '立即检查'任务只能为以下类型的监控项/发现规则创建:
(object)
返回一个包含所创建任务ID的object,这些ID存储在taskids
属性下。每个监控项和低级发现规则都会生成一个任务。返回的ID顺序与传入的itemids
顺序保持一致。
为两个监控项创建check now
任务。一个是监控项,另一个是低级发现规则。
请求:
{
"jsonrpc": "2.0",
"method": "task.create",
"params": [
{
"type": 6,
"request": {
"itemid": "10092"
}
},
{
"type": "6",
"request": {
"itemid": "10093"
}
}
],
"auth": "700ca65537074ec963db7efabda78259",
"id": 1
}
响应:
创建diagnostic information
任务。
请求:
{
"jsonrpc": "2.0",
"method": "task.create",
"params": [
{
"type": 1,
"request": {
"alerting": {
"stats": [
"alerts"
],
"top": {
"media.alerts": 10
}
},
"lld": {
"stats": "extend",
"top": {
"values": 5
}
}
},
"proxy_hostid": 0
}
],
"auth": "700ca65537074ec963db7efabda78259",
"id": 2
}
响应:
CTask::create() 位于 ui/include/classes/api/services/CTask.php 文件中。