Scheduler - automating workflows and reporting process

Modified on Tue, 28 Mar, 2023 at 11:59 AM


Omniscope Business* and Enterprise editions come with the Scheduler application. The app allows the users to schedule and automate data workflow execution and report data refresh either in regular intervals (e.g. every hour, every Monday morning) or on demand.


The Scheduler application can also facilitate workflow execution in a scenario where the report viewer is uploading a file through the dashboard interface. (read more in this article)


NOTE: If you have been using previous version (Omniscope Classic) and have defined some Scheduler tasks - they will continue to operate and function.  You don't need to convert them to the latest version of Omniscope, although there may be some tasks you may have to edit, in case they were related to the legacy IOK functionality. 


Omniscope Evo scheduler is part of the Admin web application, which is accessible via the “Admin” link on the sidebar of the File list /Project page or the Scheduler shortcut.  It contains the Scheduler configuration interface, as well as the Task status and Logs for execution updates and diagnostics.


Task Status

Here you can access current status of your scheduled tasks - the response is structured like a CSV file and allows you to read the list or feed it into another process.



Logs

This section contains the scheduler log, showing what the scheduler is doing, executed tasks and their status. If a scheduled report is not available, this is the first place to check in your investigation.



Scheduler Config

This is a control centre - it contains the list of all your existing schedules, including recurrences. 


WARNING: All scheduler tasks need to be explicitly saved in order for them to take effect. However any test action executions (within a task that is not yet saved) will be applied on the server and cannot be undone.


Task


A task represents an action or multiple actions you wish to perform: open a file, refresh a source, create a csv output...


Task list


The first page you see when you open the scheduler config is the task list - here you will see a list of all your configured tasks. To create new tasks simply click on "Add Task". 

This will create automatically a number of commands next to it:




Enable/disable task if necessary. You may use this to disable certain task temporarily, or when you are initially configuring the task.

Ad-hoc execution or testing of a task.


Downloads the current task as an xml file.

Deletes the current task.


Duplicates the task.


Task name

This name appears in the "Task list" page, so you can give meaningful names to different reports/their execution programme. 


Action

As a part of a task you could define any of the actions below.


 

Project action


The most common action is a "Project" action, which allows you to automate your existing workflow, which contains links to data, ETL transformation and interactive reports.


  • Execute blocks: Allows you to execute the workflow.


  • Edit block options: Allows you to edit "Record filter" or "Database" block configurations. NOTE: This action will modify the project before executing. This action is very useful if you wish to modify database configuration or record filter and change the data.


Other actions

There are various other actions wish you can add including "Sequence of actions" which allows you to group actions together.



Failure action

Allows you to configure an action to be execute if the "Action" fails. Normally, you would use this to email yourself if a scheduler action has failed so that you can investigate.



Schedule

This is where you schedule how often you wish to run this task. A task can be execute multiple times.



Delay settings

This section allows you to configure what happens if the task is delayed. This can happen if a previous task you have scheduled over runs.




Advanced

Clicking on the "Settings" button on the toolbar takes you to advanced settings of the scheduler.



This section allows you to configure both the concurrency (multiple tasks execution) and watch folder settings (on-demand execution).



Event-driven control of Omniscope via XML Actions files 


Watch folder

Once the project files are configured, containing data transformation logic and/or visualisations, you may wish to execute them on regular or ad-hoc basis. 

Omniscope Scheduler includes other processes as well as the chronological scheduling loop. 

One of these is a process which "watches" a nominated folder (the 'watch folder') continuously, while the Scheduler is running.  Any XML Action files saved into this folder are detected by the Scheduler app and executed immediately, then deleted in sequence, providing event-driven control of Scheduler. 


Therefore the watch folder allows you to programmatically execute "XML actions" from an external trigger.
This is the alternative to configuring regular scheduled tasks.



Instructions

You can create an XML Action using the Omniscope Scheduler user interface to create a sample XML file, export it, then use it as a model for modifying a custom XML text file, either manually or programmatically.


To execute an XML Action file on demand, copy it into the watch folder, by default found in "scheduler\watch" within the Omniscope installation folder. The location is configurable and depends on where you installed Omniscope.

If the Scheduler is running, this file will immediately be executed then deleted. After testing, refer to the Scheduler logs to check for errors.


Notes

  • If you are repeatedly testing changes to an XML Actions file, be careful to copy (and not move) the XML Actions file to the watch folder, because it will be automatically deleted after being executed. 
  • Also be sure to refresh the web browser showing the log frequently to check for errors.
  • The files dropped into the watch folder are executed in sequence and in no specific order, using the same JVM as the Scheduler.




Concurrency 

Scheduler application will allow you to refresh more than one process at any time. The Concurrency setting allows you to manage and control different tasks that could be scheduled and executed concurrently. 





*requires Scheduler Add-on

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article