When a pipeline is configured and published with Custom Scheduler Trigger, a new function that executes the flow in pre-established breaks is created. For that, a cron expression is followed, defined in the configurations of this type of trigger.

Click here to know more about the cron expression.

Custom Scheduler Trigger has 4 variables. Check them out:

  • 5-Minute Scheduler: has a 5-minute pre-configuration. When you deploy a pipeline with this variable, the executions are programmed for every 5 minutes.
  • 30-Minute Scheduler: has a 30-minute pre-configurations. When you deploy a pipeline with this variable, the executions are programmed for every 30 minutes.
  • Midnight Scheduler: has a pre-configuration to be triggered always at midnight. When you deploy a pipeline with this variable, the executions are programmed for midnight.
  • Custom Scheduler: doesn't have a pre-configuration, allowing you to customize a customizable cron expression. When you deploy a pipeline with this variable, the executions are programmed according to the cron expression you specify.

IMPORTANT: Midnight Scheduler doesn't allow Time Zone ID to be configured. Given that, the execution happens at midnight in Time Zone UTC, that can be different from your Time Zone.

Take a look at the configuration parameters of Custom Scheduler Trigger:

  • Concurrent Scheduling: indicates if the pipeline must follow the rule, that means, if the execution must start even if there're previous executions under processing. Let's say a pipeline is configured to be executed every 3 minutes. However, one of the previous executions took 4 minutes to be finished. That way, we have different scenarios:

- TRUE: the following execution happens simultaneously with the current one. The executions might overlap, what results in the expense of the memory allocated for the pipeline when "n" threads happen in parallel.

- FALSE: the following execution, besides the other ones, won't be initiated until the previous execution is finished.

Example:

{
"concurrentScheduling": false
}

  • Time Zone ID: defines under which timeZone the pipeline will be executed. If no timeZone is defined, the default UTC will be followed (12h UTC == 9h in the Time Zone of Sao Paulo, for example).
{
"timeZoneId": "America/Sao_Paulo"
}

See other Time Zone IDs:

"Time Zone ID" Hours/Minutes

"Brazil/Acre" (UTC-05:00)

"Brazil/West" (UTC-04:00

"America/Sao_Paulo" (UTC-03:00)

"Canada/Atlantic" (UTC-03:00)

"America/Buenos_Aires" (UTC-03:00)

"Europe/Sofia" (UTC+03:00)

"America/Los_Angeles" (UTC-07:00)

Click here to access a complete list.

  • Retries: number of times the trigger will try the activation in case of errors in the execution.
  • Cron Expression: expression that defines the day, hour and the recurrence of the execution of a pipeline.

Example for the execution of a pipeline every 5 minutes:

{
"cronExpression": "0 */5 * ? * *"
}

You can have more information about the format of the expressions by clicking here. But if you want to know how to build them, then click here.

  • Payload: if the trigger needs some payload to be activated, you can define a JSON upload
  • Type: type of trigger
  • Name: name of the trigger
  • Timeout: limit time for the flow under processing to return some answer (in milliseconds - standard: 60000; limit: 300000)

Example:

{
"timeout": "300000"
}

Custom Scheduler Trigger configuration

Let's say you'd like to activate the execution of a pipeline every 30 minutes, without overlap, with a 2-minute Timeout and following the Time Zone of Sao Paulo (UTC-3).

{
"cronExpression": "0/30 * * ? * * *",
"concurrentScheduling": false,
"timeout": "120000",
"timeZoneId": "America/Sao_Paulo"
}

Did this answer your question?