How to check if enonic CMS server is working ok

We’re running Enonic CMS in production, and have some stability issues. Our loadbalancer (webseal) need to detect when Enonic is non responsive.

We have expereienced enonic problems in production, where the server would answer to TCP connections, but not deliver any content.

Currently our LB (which is quite limited in what kind of checks it can perform) is happy if it can open a TCP connection to enonic, so the bad server was never marked as offline, and many of our customers experienced a site down.

I’ve discovered that Enonic CMS has a status page returning a JSON object describing the status of the cluster.

How will this page report a problem ? If the instance hosting the status page is non responsive, will it return an http error code ? any other way to detect that the instance is non responsive using http calls ?

For good ol CMS, the status page can for instance tell if the cluster is in state red, and other details like memory state. Do you have any more insight to what caused the hang on the specific node?

No, it was restarted before we could query the status page.

How about HTTP return codes ? is it always 200 OK for this page ?
How can make a machine decide if the node is not “feeling good” by parsing the json ?

Why not simply have a timeout for getting first bytes back from a normal request?
Naturally, if the status API would fail with a 500, something is seriously wrong.
So, if you request cluster health info and find “status = red” you can definetly shut down traffic to that node.