创建任务
使用 InfluxDB 用户界面 (UI)、influx
命令行界面 (CLI) 或 /api/v2
API 创建任务。
在创建任务之前,请查看 编写任务的简介。
在 InfluxDB UI 中创建任务
InfluxDB UI 提供多种创建任务的方式
从数据探索器创建任务
在左侧导航菜单中选择 数据探索器。
构建查询并点击右上角的另存为。
选择任务标题。
指定任务选项。有关每个选项的详细信息,请参阅任务选项。
点击保存为任务。
在任务 UI 中创建任务
在左侧导航菜单中,选择任务。
在右上角点击 创建任务。
在左侧面板中,指定任务选项。有关每个选项的详细信息,请参阅任务选项。
在右侧面板中,输入您的任务脚本。
省略任务分配选项
在 InfluxDB 任务 UI 中创建新任务时,请将代码编辑器留空。保存任务时,任务 UI 会使用您在任务选项表单中指定的任务选项自动填充
option task = {task_options}
。编辑已保存的任务时,您将看到注入的
option task = {task_options}
。在右上角点击保存。
导入任务
在左侧导航菜单中,选择任务。
在右上角点击 创建任务。
在左侧面板中,指定任务选项。有关每个选项的详细信息,请参阅任务选项。
将原始 Flux 任务粘贴到任务选项字段右侧的代码编辑器中。
在右上角点击保存。
从模板创建任务
在左侧导航菜单中,选择设置 > 模板。
找到您想要使用的模板,并点击其资源列表以展开资源列表。
在资源列表中,点击您想要使用的任务。
克隆任务
在左侧导航菜单中,选择任务。
找到您想要克隆的任务,并点击任务名称右侧远端的 图标。
点击克隆。
使用 influx CLI 创建任务
使用 influx task create
命令创建新任务。它接受文件路径或原始 Flux。
使用文件创建任务
# Syntax
influx task create --org <org-name> -f </path/to/task-script>
# Example
influx task create --org my-org -f /tasks/cq-mean-1h.flux
使用原始 Flux 创建任务
influx task create --org my-org - # <return> to open stdin pipe
option task = {
name: "task-name",
every: 6h
}
# ... Task script ...
# Linux & macOS: <ctrl-d> to close the pipe and submit the command
# Windows: <enter>, then <ctrl-d>, then <enter> to close the pipe and submit the command
使用 InfluxDB API 创建任务
使用/api/v2/tasks
InfluxDB API 端点创建任务。
POST https://127.0.0.1:8086/api/v2/tasks/
在您的 API 请求中提供以下信息
请求头
- Content-Type: application/json
- Authorization: Token
INFLUX_API_TOKEN
请求正文
包含以下字段的 JSON 对象
- flux: 包含
task
选项 和查询的原始 Flux 任务字符串。 - orgID: 您的 InfluxDB 组织 ID
- status: 任务状态(“活动”或“非活动”)
- description: 任务描述
curl --request POST 'https://127.0.0.1:8086/api/v2/tasks' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token INFLUX_API_TOKEN' \
--data-raw '{
"flux": "option task = {name: \"CPU Total 1 Hour New\", every: 1h}\n\nfrom(bucket: \"telegraf\")\n\t|> range(start: -1h)\n\t|> filter(fn: (r) =>\n\t\t(r._measurement == \"cpu\"))\n\t|> filter(fn: (r) =>\n\t\t(r._field == \"usage_system\"))\n\t|> filter(fn: (r) =>\n\t\t(r.cpu == \"cpu-total\"))\n\t|> aggregateWindow(every: 1h, fn: max)\n\t|> to(bucket: \"cpu_usage_user_total_1h\", org: \"INFLUX_ORG\")",
"orgID": "INFLUX_ORG_ID",
"status": "active",
"description": "This task downsamples CPU data every hour"
}'
这个页面有帮助吗?
感谢您的反馈!