System Health Status

Documentation

This service performs user defined health checks for the various services that compose an application.

It offers a REST API where you can list available health checks and also gives the chance to run them individually or all together. This page is just a HTML view of the JSON response provided by one of those API methods.

Repeating failed tests

The third column of the table displays a button labeled GO. By pressing this button you can re run a failed the tests to see if it came back to normal.

REST API

/
Returns this HTML view. If the check was performed without errors then the table row will be green, else it will be shown as red.
/checks
Returns a list of available health checks as a JSON array.
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/checks
[
    "monitor.check.jackrabbit",
    "monitor.check.redis",
    "monitor.check.memcache",
    "monitor.check.php_extensions"
]
/all_checks
Returns a list of available groups and health checks as a JSON object.
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/all_checks
{
    default: [
        "monitor.check.jackrabbit",
        "monitor.check.redis",
        "monitor.check.memcache",
        "monitor.check.php_extensions"
    ],
    app_server: [
        "monitor.check.jackrabbit",
        "monitor.check.redis",
    ],
    cron_server: [
        "monitor.check.redis",
        "monitor.check.memcache",
        "monitor.check.php_extensions"
    ]
}
/groups
Returns a list of available health checks groups as a JSON array.
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/groups
[
    "default",
    "app_server",
    "cron_server"
]
/list/reporters
Returns a list of additional reporters available as a JSON array.
$ curl -XGET -H "Accept: application/json" http://drm-poc.cloud.display.aero/list/reporters
[
    "newrelic_reporter",
    "file_reporter",
    "another_awesome_reporter"
]
/http_status_checks
Performs all health checks and returns the results within the HTTP Status Code (200 if checks are OK, 502 otherwise). The failure status code is configurable as failure_status_code.
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/http_status_checks
HTTP/1.1 200 OK
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/http_status_checks
HTTP/1.1 502 Bad Gateway
/http_status_check/check_id
Performs the health check specified by check_id and returns the result within the HTTP Status Code (200 if checks are OK, 502 otherwise). The failure status code is configurable as failure_status_code.
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/http_status_check/monitor.check.redis
    HTTP/1.1 200 OK
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/http_status_check/monitor.check.redis
    HTTP/1.1 502 Bad Gateway
/run
Performs all health checks and returns the results as an array of JSON objects.
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/run
{
    "checks":
        [
            {"checkName": "Jackrabbit Health Check", "message": "OK", "status":true, "service_id": "monitor.check.jackrabbit"},
            {"checkName": "Redis Health Check", "message": "OK", "status":true, "service_id": "monitor.check.redis"},
            {"checkName": "Memcache Health Check", "message": "KO - No configuration set for session.save_path", "status":false, "service_id": "monitor.check.memcache"},
            {"checkName": "PHP Extensions Health Check", "message": "OK", "status":true, "service_id": "monitor.check.php_extensions"}
        ],
    "globalStatus": "OK|KO"
}
/run/check_id
Runs the health check specified by check_id and returns the result as a JSON object.
$ curl -XPOST -H "Accept: application/json" http://drm-poc.cloud.display.aero/run/monitor.check.redis
{
   "checkName": "Redis Health Check",
   "message": "OK",
   "status": true,
   "service_id": "monitor.check.redis"
}
Check Result JSON Structure
checkName
A string providing the health check name.
message
A message returned by the health check. In case of an error the exception message is shown here.
status
A boolean indication if the health check passed.
service_id
The service_id specified in the service container configuration.

Grouping Checks

The following URLs accept an optional query parameter ?group= to specify the check group:
/checks?group=default
/http_status_checks?group=default
/http_status_check/check_id?group=default
/run?group=default
/run/check_id?group=default