Look at the clock, its time for Scheduler!
Some task (short or long-running) need to be repeated periodically. Scheduler is an integrated solution that is specifically designed to solve this problem.
Any entity can be considered a task, as long as it implements an
Execute operation. This method can optionally return a generated entity (e.g., triggered Process).
For tasks that are not parameterizable
SimpleTask can be used. It’s just a
Symbol associated with a piece of code your write.
Any task can be executed manually if necessary (Synchronously or Asynchronously), or can be programmed to run periodically.
Out of the box, the scheduler is able to trigger actions with different periodicity:
By having a centralized entity for scheduling, it's easier to control all the programmable tasks that occur in the application.
The Scheduler Panel will let you have a complete overview of the scheduler module:
Finally, when a task is executed (manually or periodically), it stores a log in the database containing the following fields.
This information is valuable to track if all the task have been executed, possible exceptions, etc..
Turn back to Signum Extensions