An administrator can schedule routine tasks very precisely from Administration > Site administration > Server > Scheduled tasks.
Note that you still need to run the CRON scripts (\admin\cli\cron.php or http:\\yoursite\admin\cron.php) at regular intervals. The script is best run every minute.
Clicking the edit icon allows the administrator to specify the minute/hour/day/month or day of the week the task is to be run. It is also possible to reset the task to its default setting or disable it completely.
New scheduled tasks in Moodle 2.8 onwards are:
- Update all installed language packs
- Cleanup of unverified incoming email
- Incoming email pickup
- Removing any unnecessary event monitor events
In Moodle 2.8.3 onwards, the column 'Next run' provides information on whether a plugin or a task is disabled (as well as the date that a task will next run).
Format for scheduling tasks
When typing into the fields, the format is the same as for Unix cron. Examples are as follows and are according to which field you are editing:
* is every minute, hour, day, month */2 is every two minutes, every two hours or every second day 2-10 is every minute between two and ten past the hour or every hour between 2 and 10 am 0 is every Sunday 1 is every Monday or every January 2,5 is the second and 5th of the month, or February and May, or Tuesday and Friday.
If you're trying to debug a cron task, you may notice the Fail Delay becomes populated with a number. This is the time in seconds the cron will delay running the task. To sidestep this problem for development purposes, take a look at the Scheduled Tasks section here: Administration_via_command_line#Scheduled_tasks