Scheduling

Overview

Coravel Pro's Scheduling allows you to schedule your jobs by using an attractive and intuative user interface.

Scheduled jobs are persisted by Entity Framework Core under-the-covers.

What Happens In Development Stays In Development

This means any scheduled jobs in production will stay in production. Any any in development environments stay in development.

This is a useful tool when testing new jobs - so you do not accidentally push test schedules to production by accident!

Preliminary Notes

Just like Coravel Pro's Job Manangement, the scheduling feature will automatically detect all your jobs/invocables.

There's no need to worry about adding your jobs to the service provider.

You may navigate to /Coravel/Scheduling/ in your browser to view the scheduling page.

Available Jobs

The first section lists all the available jobs that are able to be scheduled.

available jobs

Scheduling A Job

You can schedule a job by pressing the Schedule button. This will bring up an easy-to-use user interface to guide you through the schedule details.list-reset

Frequency

First, you need to select how often the job will run:

scheduling

Days To Run Job

Next, you need to select what days the job will run on. This is useful if you only want certain jobs to run during the weekend, for example.

Prevent Overlapping

Then, choose whether the job will only ever have one instance running or if you want to allow multiple overlapping instances of the same job.

scheduling2

Recommended

It is recommended to prevent overlapping for most jobs, unless you have a specific reason to allow overlapping.

Dedicated Thread For Job

Finally, you can choose to run this specific job on it's own thread. Normally, all jobs scheduled via Coravel Pro will run on the same dedicated thread.

However, there are times when you have critical jobs that might take a long time to run or need to run at exactly the time you specified - use this feature.

dedicated thread

Warning

Keep in mind not to overwhelm your system by scheduling too many jobs on their own threads! Use this feature wisely 😉.

Viewing Schedule Details

For jobs that are scheduled, you can see how many different schedules a job has:

status

Clicking this badge will bring up the details for this job's schedules:

schedule details

Unscheduling A Job

From this list you may click the Unschedule button to unschedule the job's specific schedule.

Schedule History

On the main page, after Available Jobs, you will see the history of all completed scheduled jobs.

FYI

This list is refreshed every 15 seconds.

schedule history

Viewing Failed Jobs

Like Job Management - you may view the details of any failed jobs by clicking View Error.