Documentation
DocumentationDiscussions
Documentation
These docs are for v2023.2. Click to read the latest docs for v2024.3.

Application Health Checks

Uptime monitoring for HTTP endpoints and APIs

The Seq.Input.HealthCheck app periodically GETs an HTTP or HTTPS URL and logs various response metrics to Seq.

The resulting stream of log events can be used for uptime monitoring, alerting, trend analysis, and diagnostics.

2560

Using the events from the Health Check input to chart response times from a web page.

Seq.Input.HealthCheck is a Seq App that needs to be installed and configured before it can be used.

The app is installed once, and then an instance of the app is configured for each URL that needs to be health-checked.

Installing the Input

In Data > _Ingestion, select Install Input Apps:

2560

The input's package id is Seq.Input.HealthCheck:

2560

Once the app is installed, you'll be returned to Data > Ingestion where you can add a URL to check.

Checking a URL

The app will periodically issue an HTTP GET request to a specified URL. A new instance of the app needs to be run for each URL that will be checked.

Still in the Ingestion screen, select Add Health Check Input.

2560

This will request a number of details including the URL and checking interval.

2560

Note that health check events take up space on the Seq server. The default checking interval of 60 seconds is recommended for most health checks.

📘

If the URL is an HTTPS URL, then the Seq server must trust the SSL certificate that the target server is using.

Once the instance of the app is saved, it will show in the inputs list.

2560

Use the Add Instance button to check more URLs.

Health Check Events

Each time a check is completed, details of the response will be written back to the Seq event stream:

2560

The events include various properties describing the response.

If a health check fails, the event's level will be set to Error:

2560

Network failures like the one above will display a StatusCode of null, since no HTTP request could be completed. If the request is completed but the status code does not indicate success, this will be included in the event, too.

Further reading