36.11.1Runtime Status Endpoint

 

The Runtime Status endpoint is used to query the cluster manager for information about the running system. This includes details about the operating status of nodes as well as the current state of the system health checks.

36.11.2Fetch Complete Node Status Information

 
This method requires the VIEW_MODULE_STATUS permission.

This method will return the status and health of all nodes and modules across the cluster.


To invoke:

GET http://localhost:9000/runtime-status/node-statuses/complete

The server will produce a response resembling the following:

{
  "nodeStatuses": [
    {
      "nodeId": "Xolo",
      "status": "STARTED",
      "statusTimestamp": "2016-12-06T06:39:10.902-05:00",
      "moduleStatuses": [
        {
          "moduleId": "admin_json",
          "moduleType": "ADMIN_JSON",
          "shortName": "JSON Admin API",
          "pid": 811,
          "port": 9000,
          "status": "STARTED",
          "stoppable": true,
          "healthChecks": [
            {
              "healthy": true,
              "message": "Listening: 91 transactions since started",
              "name": "HTTP Pipeline"
            }
          ]
        }
      ]
    }
  ]
}

For brevity only 1 node and 1 module are shown above but a real response might contain many more.

Note the following details:

  • "status": "STARTED" – this shows the actual status of the node/module. See Module Status Types for possible codes.

36.11.3Fetch All Runtime Health Checks

 
This method requires the VIEW_MODULE_STATUS permission.

This method returns all runtime health checks across the entire cluster.


To invoke:

GET http://localhost:9000/runtime-status/node-statuses/health-checks

The server will respond with an HTTP 200 OK if all health checks are currently passing, or an HTTP 420 if any health checks are failing.

The server will produce a response resembling the following:

{
  "allHealthy": true,
  "healthChecks": [
    {
      "healthy": true,
      "message": "Listening: No transactions since started",
      "name": "HTTP Pipeline",
      "moduleId": "fhir_endpoint",
      "nodeId": "Xolo"
    }
  ]
}

For brevity only 1 health check is shown above but a real response might contain many more.

Note the following details:

  • "allHealthy": true – This will be shown as false if any of the health checks are failing. This is useful for feeding into an external monitoring system.