Better Scheduler Than Cron?
Chanc_Gorkon asks: "I am looking for an open source job scheduler that is better than cron. I need a scheduler that has dependency checking, preemption (to stop jobs that access the same resources from running at the same time) and -full- logging. Cron e-mails are nice, but I usually end up cleaning them out with out reading. E-mailing the sysadmin -only- when a job does not get kicked off would be the preferable option. I have scoured Freshmeat and Sourceforge and have found nothing that comes close to what I am looking for. Do you guys have some options for me?"
A cron that supports different timezones would be good too. Why hasn't this been done?
Have you looked at launchd, the new all-purpose task control daemon? Don't be put off by the fact that it's from Apple--it's open source, licensed under the APSL, which I believe is GPL-compatible, if you care about that kind of thing. It seems to offer many of the features you want, including task scheduling, preemption control, etc.
Here's the manpage; here's a tutorial (geared towards OS X developers, unfortunately), and here's John Siracusa's overview of launchd from Ars Technica.
You could start here and see if that helps.
You identified some elements that could be written as simple unix scripts.
Serializing cron jobs that access some resource? Use "lockfile". Wrap it with something that claims the necessary locks in the right order, runs the real script, and then removes all the locks.
Only producing output in the case of an error? Write a script that saves output to a temporary file, and then cats the file if the exit value is not "success".
These should both be pretty basic tasks that can be done in shell, python, or perl. And you can take them with you t
I asked a similar question here: Open Source Batch Management
heh, 'Apple Open Source'...
I can't even get in the front door.
Did we not just have an article about this?
/., that's probably an unstated requirement).
IIRC launchd does everything you're asking for (and much much more), although I'm not sure if anyone's ported it to linux yet (knowing
"The worst tyrannies were the ones where a governance required its own logic on every embedded node." - Vernor Vinge
For future reference, the word is "don". Dawn is either a woman's name or the thing that happens right after you go to sleep.
The features you're talking about are really beyond the range of cron or any other "scheduler." The reason cron exists is to allow you to run jobs at a scheduled time. That's it. If you need to ensure that different cron jobs don't conflict with each other, that's a sign that those jobs need to be combined into a single script. A simple shell script wrapper around the jobs can take care of the logic you need. Just call that wrapper from cron and you should be good.
...borders on a production control system, a la autosys or control-m. I don't know what's available for free, but perhaps googling for a PCS rather than "cron replacement" would lead you in the right direction.
Advice: on VPS providers
it's also a brand of dish soap
http://fcron.free.fr/
Sitting Walrus Blog
Dude, just use the Task Scheduler.
Read more of this story at Slashdot.Read more of this story at Slashdot.Read more of this story at Slashdot.
I can't believe that Ask Slashdot caters to people who are too lazy to search Freshmeat.
[ approaching AI ]
Have you looked at Cfengine?http://www.iu.hio.no/cfengine/
I believe this can be relevant for you.
Oh wait, that's Shimmer. Nevermind.
WTF IS WRONG WITH YOU PEOPLE!
What is it with 80% of Slashdot readers? A person asks a question, "What other colors can I paint my bathroom besides white." 80% of the responses run along the lines, "There's nothing wrong with the color white, you just need to coordinate better with the color white." Do recent Slashdot readers and posters not understand how to answer a question?
For Gods sake the guy asks for alternatives to Cron, not a fucking explanation on how Cron can be used to fulfill the criteria. It never ceases to amaze me on the behavior of Slashdot posters.
"I am looking for an open source job scheduler that is better than cron." You'll note it doesn't read, "How do I use Cron to do X." First we had to blast people with RTFA, RTFP, RTFM, RTSYW (Read the shit you write) and any other obscure reference we can invent. This is clearly a case of RTFP.
Honestly who here would be happy walking into a restaurant and ordering a steak only to get a piece of chicken and an 8 minute lecture by the waitress explaining that you just need to season the chicken properly rather then eating steak. When I order a steak I don't want a dissertation by the obviously vegan-hippie waitress on the horrors of animal slaughtering and the need to release cattle into the wild because they're the "Whales of the Great Plains." I want the bitch to ask me if I want it burnt, tough like leather, or crawling away to escape!
How about going to an auto dealership and asking to look at trucks only to be lead to a compact 2 door Yugo with a trailer attached with bungie cords and masking tape! Fuck just answer the poor guy's question.
--- / END RANT ---
Here at my current client's location we built a home-brewed scheduler using PERL and POSTGRES. Jobs can be scheduled with a full range of options including every X minutes, hours, and so on along with LAST DAY OF MONTH. The development time was only about 3 weeks if you can devote that kind of time otherwise several people (Who apparently do know how to answer a question) have posted some great links on some alternatives.
-=[ Who Is John Galt? ]=-
Better: use a cron that doesn't send email, and just logs. Fcron is one -- it allows you to specify, on a per-job basis, whether you get email at all.
Don't thank God, thank a doctor!
omnitpotent 'monit' can be configured than way ... and so many others ;-)
http://www.tildeslash.com/monit/