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:
You can choose between three scheduling strategies:
Scheduling type: Interval
Using the Interval strategy, you can schedule a process to run on a fixed interval, expressed in seconds.
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.
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:
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:
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:
Automatically run all new work items from the process 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.