2.6 KiB
Task options define specific information about a task. They are set in a Flux script {{% show-in "cloud,cloud-serverless" %}}, in the InfluxDB API, {{% /show-in %}} or in the InfluxDB user interface (UI). The following task options are available:
{{% note %}}
every
and cron
are mutually exclusive, but at least one is required.
{{% /note %}}
name
The name of the task. Required.
Data type: String
In Flux:
option task = {
name: "taskName",
// ...
}
{{% show-in "cloud,cloud-serverless" %}}
In a /api/v2/tasks
request body with scriptID
:
{
"scriptID": "SCRIPT_ID",
"name": "TASK_NAME"
...
}
Replace SCRIPT_ID
with the ID of your InfluxDB invokable script.
{{% /show-in %}}
every
The interval at which the task runs. This option also determines when the task first starts to run, depending on the specified time (in duration literal).
Data type: Duration
For example, if you save or schedule a task at 2:30 and run the task every hour (1h
):
option task = {name: "aggregation", every: 1h}
The task first executes at 3:00pm, and subsequently every hour after that.
In Flux:
option task = {
// ...
every: 1h,
}
{{% show-in "cloud,cloud-serverless" %}}
In a /api/v2/tasks
request body with scriptID
:
{
"scriptID": "SCRIPT_ID",
"every": "1h"
...
}
{{% /show-in %}}
{{% note %}} In the InfluxDB UI, use the Interval field to set this option. {{% /note %}}
cron
The cron expression that defines the schedule on which the task runs. Cron scheduling is based on system time.
Data type: String
In Flux:
option task = {
// ...
cron: "0 * * * *",
}
{{% show-in "cloud,cloud-serverless" %}}
In a /api/v2/tasks
request body with scriptID
:
{
"scriptID": "SCRIPT_ID",
"cron": "0 * * * *",
...
}
{{% /show-in %}}
offset
Delays the execution of the task but preserves the original time range.
For example, if a task is to run on the hour, a 10m
offset will delay it to 10
minutes after the hour, but all time ranges defined in the task are relative to
the specified execution time.
A common use case is offsetting execution to account for data that may arrive late.
Data type: Duration
In Flux:
option task = {
// ...
offset: 10m,
}
{{% show-in "cloud,cloud-serverless" %}}
In a /api/v2/tasks
request body with scriptID
:
{
"scriptID": "SCRIPT_ID",
"offset": "10m",
...
}
{{% /show-in %}}