Applies to Atria 15 and later
Introduction
Atria Job management is designed to setup, execute and schedule batch processes.
The initial implementation uses this feature to execute PSA integration processes (ConnectWise, Kaseya, AutoTask), you can also utilise this feature to run Powershell based tasks.
Jobs are scheduled to execute on the platform provisioning engine.
Key Features
- A Centralised location from which to schedule and manage batch processes
- Highly configurable scheduling engine
- Run processes on demand via UI
- Centralised and standardised Logging
- Secure storage of secrets needed for accessing resources
- Flexible Parameter management and injection of parameters into PowerShell
Each job has a defined "Job Type" the job type is the program that will be run on the schedule. This can be very specific functions (e.g. transferring invoice data to a specific system), or it could be a task which executes PowerShell.
If you are familiar with other scheduling tools such as Windows Task Scheduler, the concepts described will be familiar.
- Jobs are configured with a schedule when to run
- Each time a job runs it is recorded (as a Job Run)
- Each Job Run has logs attached to it - which provide information about the work carried out by the job.
When a job is configured, a set of input parameters can be defined in a JSON formatted field.
Each job can also have "Secret" parameters which are protected through encryption by Atria, this allows you to safely store things like credentials and API keys. Once secrets are stored, they are not available again in the user interface.
Permissions
By default, the Jobs feature is available only to Service Provider administrators.
Finding the Jobs Page
The Jobs feature by default is in the configuration section
- Navigate to Configuration (Left hand menu)
- In the "Provisioning and Debug tools" section, choose the "Jobs" menu item
Scheduling (CRON) Expressions
The Atria Job Scheduler uses CRON expressions to define the schedule of when a Job should execute. This provides great flexibility but does mean that the UI is slightly more complicated. Fortunately CRON expressions have been around for a long time and there is plenty of information on how they work.
Read our short guide on CRON expressions which includes some examples which you'll be able to get started with - do not fear, they are fairly easy to understand and there are free tools that will generate them for
you.
Log Levels
The Log levels are (from lowest to highest)
- Verbose
- Debug
- Info
- Warning
- Error
There are five different logging levels available. Each process can write log entries at the appropriate level.
for example:
A failure to connect to an API would be logged as an Error - it will likely require intervention to resolve.
A slow response from an external system, might be a warning, it might require investigation.
An informational message that may be useful for diagnosis or testing, might be Verbose, it may require no action or not be of interest to most users.
The Log level can be set for the job, this determines the log entries which are of interest to the user, any log entries received which are below the specified threshold will be ignored.
For example, if the Log Level is set to Info, all Info, Warning and Error logs will be recorded. Verbose and Debug logs will be discarded.
You are able to change the log level for any job as needed.