com.gemstone.gemfire.admin.internal.package.html Maven / Gradle / Ivy
Show all versions of gemfire-core Show documentation
Contains the implementation of the external admin APIs from {@link
com.gemstone.gemfire.admin}.
Monitoring the "health" of GemFire
The health monitoring implementation comes in two pieces. On the
client (administrator) side there is a {@link
com.gemstone.gemfire.admin.internal.GemFireHealthImpl} object that is
responsible for configuring a {@link
com.gemstone.gemfire.distributed.internal.HealthMonitorImpl} that runs
in the member VMs. The communication between the administration
process and the member process is accomplised via a {@link
com.gemstone.gemfire.internal.admin.GemFireVM GemFireVM} from the
"internal admin" API. The HealthMonitorImpl
is a thread
that periodically consults a {@link
com.gemstone.gemfire.admin.internal.GemFireHealthEvaluator} that uses
a {@link com.gemstone.gemfire.admin.internal.GemFireHealthConfigImpl}
to determine the health of a GemFire component. Most of the health
criteria are based on {@linkplain com.gemstone.gemfire.Statistics
statistics} that are maintained by GemFire. When the
HealthMonitorImpl
determines that the health of a GemFire
component has changed, it alerts the administrator process via a
{@link com.gemstone.gemfire.internal.admin.HealthListener}.
The below diagram explains how the classes that monitor the health
of GemFire are implemented.