Cron – What alternatives are there to cron for running scheduled jobs

cronmonitoring

We're using cron to manage our backups and other jobs in multiple locations. Using chef to populate files in cron.daily, cron.hourly, etc has worked pretty well for us so far, but with some issues:

  • I don't want to have to manage a mailserver on the system just to receive cron output
  • I want to be able to put output in my cron jobs without receiving email about them if nothing went wrong
  • I don't want to have to check /var/log/messages to see if jobs failed without output
  • I don't want to have to log in to the system to find that the backup job is still running

Optimally, I'd like a web-based frontend that I can use to see this information, either as an extension on cron or a complete replacement.

I can solve the above problems myself with a bit of scripting, but I'm sure that this is a problem that others have solved already.

Note that I acknowledge that this is a completely separate issue from verifying the backups after they've been completed.

Best Answer

You can use Resque - with its built-in web interface - to manage jobs. Check out the Resque Railscast to see it in action.

Then use the ruby gem resque-scheduler to add jobs to queues at scheduled times.

There's a good blog post on it: "Cron tasks for your Rails application with Resque"

Related Topic