Hi all,
so I went ahead with this, see documentation [5] on how it works. Any
feedback is appreciated (best before the release :))
-Georg
[5]
https://github.com/apache/felix-dev/blob/master/healthcheck/README.md#monitoring-health-checks
On 2020-03-28 23:31, Georg Henzler wrote:
Hi Andrei,
so the marker service SystemReady is intended to be used in the exact
same
way as the one from systemready bundle [1] (and reacts fix to the
health
status of tag 'systemready'). Healthy is the more generic marker
interface,
it allows to depend on the healthy status (that is OK or WARN, see [2]
for
reasoning) of any tag, see [3] for an example. Now a prerequisite for
this
to work is that the status is regularly polled, this is what the
HealthCheckMonitor [4] is for (FELIX-6250)
The Unhealthy marker interface is just the opposite, this could be
useful
to activate an alternative fallback functionality or some self-healing
mechanism. Now this will be the least-important use case I suppose, but
I
liked the idea to have a symmetric approach here. HealthCheckMonitor
[4]
allows to configure if Healthy and/or Unhealthy is registered upon
status
changes of the health check (the default will only register Healthy).
-Georg
[1]
https://github.com/apache/felix-dev/blob/master/systemready/src/main/java/org/apache/felix/systemready/SystemReady.java
[2]
https://github.com/apache/felix-dev/tree/master/healthcheck#semantic-meaning-of-health-check-results
[3]
@Reference(target="(tag=db-available)")
Healthy dbAvailable;
[4]
https://github.com/apache/felix-dev/blob/775545aa8f0657d7c5f703bc901693dcdbaff92f/healthcheck/core/src/main/java/org/apache/felix/hc/core/impl/monitor/HealthCheckMonitor.java#L108