Running in debug mode, do not use in production.

HTTP API

The DEFNA Monitoring pinging API is used for submitting success, failure and job start signals from the monitored systems.

General Notes

All ping endpoints support:

  • HTTP and HTTPS
  • HTTP 1.0, HTTP 1.1 and HTTP 2
  • IPv4 and IPv6
  • HEAD, GET and POST requests methods. The HTTP POST requests can optionally include diagnostic information in the request body. If the request body looks like a UTF-8 string, DEFNA Monitoring stores the request body (limited to first 10KB for each received ping).

Successful responses will have the "200 OK" HTTP response status code and a short and simple string "OK" in the response body.

Signal Success ("ping")

HEAD|GET|POST https://monitoring.defna.org/ping/{uuid}

Signals to DEFNA Monitoring that the job has completed successfully (or, for continuously running processes, is still running and healthy). The uuid parameter is unique for each check.

Example

GET /5bf66975-d4c7-4bf5-bcc8-b8d8a82ea278 HTTP/1.0
Host: hc-ping.com
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 29 Jan 2020 09:58:23 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 2
Connection: close
Access-Control-Allow-Origin: *

OK

Signal Failure

HEAD|GET|POST https://monitoring.defna.org/ping/{uuid}/fail

Signals to DEFNA Monitoring that the job has failed. Actively signalling a failure minimizes the delay from your monitored service failing to you receiving an alert.

Example

GET /5bf66975-d4c7-4bf5-bcc8-b8d8a82ea278/fail HTTP/1.0
Host: hc-ping.com
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 29 Jan 2020 09:58:23 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 2
Connection: close
Access-Control-Allow-Origin: *

OK

Signal a Start

HEAD|GET|POST https://monitoring.defna.org/ping/{uuid}/start

Sends a "job has started!" message to DEFNA Monitoring. This is optional but enables a few extra features:

  • DEFNA Monitoring will measure and display job execution times
  • DEFNA Monitoring will detect if the job runs longer than its configured grace time

Example

GET /5bf66975-d4c7-4bf5-bcc8-b8d8a82ea278/start HTTP/1.0
Host: hc-ping.com
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 29 Jan 2020 09:58:23 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 2
Connection: close
Access-Control-Allow-Origin: *

OK