I'm using Quartz to regularly create a bunch of jobs that I sent to a queue (RabbitMQ开发者_开发知识库) where they are picked up and executed by Akka actors. One piece that is missing is job monitoring. If one job fails, I don't even notice.
The jobs are fairly simple: they only have 1-2 parameters and there are no dependencies.
Is there anything (library, best practice etc.) I can leverage for this (even a SQL schema would be a good start)?
PS: I already considered Spring-Batch and it seems to be too much overhead.
I think that you'll find tools to monitor JMS. Typical one is bundle with the JMS vendor. An interresting feature of JMS would be that it can detect message processing failure send the message to another consummer.
Assuming you go the JMS monitoring route you'll require to: - make your Akka actor synchronous so the JMS message will wait for it to respond before proceding to failure or success. - log failures for Quartz job that weren't able to send JMS message.
Another solution would be to be fully synchronous and let the Quartz message manage the loging (possibly in a base class or a proxy) so all you have to do for monitoring is reading the log file.
From my understanding Akka Actor monitoring is not here yet, but it is on the plans. In the meantime, you can have a start here: http://groups.google.com/group/akka-user/browse_thread/thread/3818fb17bef95869
精彩评论