Scheduling processes in Control Room

In Control Room, you can set up your Unattended Processes to run automatically on a schedule. The schedule can be set using different strategies to get as granular as you need.

Setting the schedule for a Unattended Process

In Control Room, navigate to the process you want to schedule inside your workspace. Click the Configure button. Then, click on the Schedule tab and toggle scheduling on:

Control Room: Configure process

Control Room: Activate scheduling

You can choose between three scheduling strategies:

Control Room: Choose scheduling strategy

Scheduling type: Interval

Using the Interval strategy, you can schedule a process to run on a fixed interval, expressed in seconds.

Control Room: Specify seconds in interval scheduler

The process will trigger automatically every time the specified amount of time passes. For example, if you enter an interval of 600 seconds (10 minutes), a new process run will be started every 10 minutes.

Scheduling type: Weekday

Using the Weekday strategy, you can define a specific time and one or more days of the week when your process will be executed automatically.

Control Room: Weekly schedule

Scheduling type: Custom (cron)

Control Room supports scheduling using CRON expressions. These powerful, universal expressions can describe even the most complex of schedules.

Simple CRON expression

The following CRON expression triggers the process at 30th minute of every hour, every day:

30 * * * *

Control Room: CRON scheduling

Complex CRON expression

Sometimes the scheduling requirements are more complicated:

At 04:05 on Wednesday and Friday in February, April, June, August, October, and December (Europe/Helsinki time zone).

Here's what the complicated schedule looks like as a CRON expression:

5 4 * 2,4,6,8,10,12 3,5

Control Room: Complex CRON scheduling

Help for creating CRON expressions

You can go to https://crontab.guru/#5_4_*_2,4,6,8,10,12_3,5 to edit the expression, or create your own. The user interface also translates the CRON expression into a human-readable phrase:

Crontab.guru

Automatically run all new work items from the process input

Control Room: Run all new work items from input

By ticking this option, scheduled process runs are started with all existing "new" work items.

One powerful use-case for this option is to accumulate work to be processed by creating new work items using the API (or manually via Control Room UI) and defer the processing of said work items to a later time, on a schedule. Combined with a cron scheduler, the feature can be used to create e.g. queue pollers. In case there are no new items in the input, no runs will be started, and hence no run minutes will be used.

Last edit: April 10, 2024