A server self health monitor (SHM) system monitors the health of the
server it resides on. The health of a server is determined by the health
of all of a server's sub-systems and deployed applications. The SHM may
make health check inquiries to server sub-systems periodically or based
on external trigger events. The sub-systems perform self health checks on
themselves and provide sub-system health information to requesting
entities such as the SHM. Sub-systems self health updates may be based on
internal events such as counters or changes in status or based on
external entity requests. Corrective action may be performed upon
sub-systems by the SHM depending on their health status or the health
status of the server. Corrective action may also be performed by a
sub-system upon itself.