Hi, after looking into the current HC API I'm wondering if we shouldn't the API differently: what we need is the ability to execute checks, get a result and it would be nice to have the result available via JMX.
Now, for this we need a HealtCheck interface with a single method check() returning a result (whatever that is). A HC is an OSGi service with some service properties, meta data like tags etc. can be managed through these properties. Executing a check is as simple as calling this method, executing all checks looks up all available services and calls the method on each of them. Registering JMX MBeans can be done by an additional component, getting all service references for a HC service and using the service properties of a HC to register an MBean. So all we need is the HC interface, the result interface (or maybe class) and the JMX support. Implementing a HC is then as simple as writing an OSGi service. On top of that we can add support for scripting etc. where we have a manager service which registers the scripts (or whatever it is) as HC services. WDYT? Carsten -- Carsten Ziegeler [email protected]
