Monitoring APIs

edit

This functionality is in technical preview and may be changed or removed in a future release. Elastic will work to fix any issues, but features in technical preview are not subject to the support SLA of official GA features.

Logstash provides the following monitoring APIs to retrieve runtime metrics about Logstash:

You can use the root resource to retrieve general information about the Logstash instance, including the host and version.

GET /

Example response:

{
   "host": "skywalker",
   "version": "5.1.2",
   "http_address": "127.0.0.1:9600"
}

By default, the monitoring API attempts to bind to tcp:9600. If this port is already in use by another Logstash instance, you need to launch Logstash with the --http.port flag specified to bind to a different port. See Command-Line Flags for more information.

Common Options

edit

The following options can be applied to all of the Logstash monitoring APIs.

Pretty Results

edit

When appending ?pretty=true to any request made, the JSON returned will be pretty formatted (use it for debugging only!).

Human-Readable Output

edit

For Logstash 5.1.2, the human option is supported for the Hot Threads API only. When you specify human=true, the results are returned in plain text instead of JSON format. The default is false.

Statistics are returned in a format suitable for humans (eg "exists_time": "1h" or "size": "1kb") and for computers (eg "exists_time_in_millis": 3600000 or "size_in_bytes": 1024). The human-readable values can be turned off by adding ?human=false to the query string. This makes sense when the stats results are being consumed by a monitoring tool, rather than intended for human consumption. The default for the human flag is false.