Thursday, November 26, 2009

RHQ and the future of alerts

So don't get me wrong, alerts will stay within RHQ - I am not questioning them.
In contrary - I am actually working on improving the alert subsystem. As a start I've written some design documents that can be found on the RHQ wiki:

Please go through them and give us feedback.

But before I continue - a little teaser:


I've extended the Mobicents sender in my experimental branch (see 'Jopr talking') to also support sending via SMS now. So the image above shows an alert sent via that mechanism. Thanks to Jean Deruelle again for helping me on the Mobicents side.

But now back to future alert design...

We have identified the following four fields of change / improvement:

  • Allow for pluggable alert senders

  • Allow to acknowledge alerts by users

  • When a resource is in maintenance mode, do not send alerts about it

  • Escalate alert notifications if an alert is not reacted on

Of course some of those are meant for the future - e.g. there is no maintenance mode yet.

The first thing - which I am currently working on are pluggable alert senders. So if you want to e.g write a sender that posts alert notifications to an IRC channel, you can do so now. This is done in a pluggable fashion, which means that the code that does the work and also the UI is encoded in your plugin.

If you want to write such a plugin, you need to do two things:

Extend the abstract AlertSender class and write a plugin descriptor (here is the schema)

I've started an example on how to use this API.

Note that all of this is not yet finished and may change at any time - again I'd like to hear your feedback.

In the very first version only UI elements that follow a <configuration> will be supported. Later it will also be possible to supply a XHTHL snippet for UI fields, where you need to write your own backing beans to transfer the values into the alert subsystem.


Thomas Heute said...

We all need a Nabaztag plugin, I want my rabbit to tell me when something is wrong ;)

(Just Kidding)

Maurice Zeijen said...

Great to here that the alert system is going to be improved.

I have a question: Can the maintenance mode be scheduled? For example that you can say that the system is in maintenance for then next 2 hours. Another example would be that you could schedule that the system is in maintenance mode every night from 1:00 till 2:00.



Heiko W. Rupp said...

you can already sent it emails with the alert message - but when there is a better way of doing so, one could use this as a nice example plugin. Of course someone would need to buy me a Nabaztag first :-))


Heiko W. Rupp said...


I did not yet think about it and took it as "given". What I have in mind is that you put a resource in maintenance mode and all of its children will be in maint mode too.
Together with applying maintenance mode to a group, this could be nice and powerful - I will add this to the alert overview page.


Heiko W. Rupp said...
This comment has been removed by the author.
Maurice Zeijen said...


The reason why I am asking for a scheduled maintenance mode is because it is something that I could surely use. We have a Jopr installation at my work place. It monitors multiple JBoss servers. These JBoss servers are restarted every night. What I know (but that could be out of date) there is no way to tell Jopr that it can ignore that. The result is that I always get the alert messages.

With monitoring systems like Nagios or sitescope you can tell the system to stop monitoring (or ignore the alerts) between certain times. But those system don't have such great support for the java server platform like JOPR.

It would be great if you would consider implementing such a feature.