Links

Send health data

StackState Self-hosted v5.1.x

Overview

StackState can synchronize health information from your own data sources either via HTTP or the StackState CLI.

StackState Receiver API

The StackState Receiver API accepts topology, metrics, events and health data in a common JSON object. The default location for the receiver API is the <STACKSTATE_RECEIVER_API_ADDRESS>, constructed using the <STACKSTATE_BASE_URL> and <STACKSTATE_RECEIVER_API_KEY>.
Kubernetes
Linux
The <STACKSTATE_RECEIVER_API_ADDRESS> for StackState deployed on Kubernetes or OpenShift is:
https://<STACKSTATE_BASE_URL>/receiver/stsAgent/intake?api_key=<STACKSTATE_RECEIVER_API_KEY>
The <STACKSTATE_BASE_URL> and <STACKSTATE_RECEIVER_API_KEY> are set during StackState installation, for details see Kubernetes install - configuration parameters.
The <STACKSTATE_RECEIVER_API_ADDRESS> for StackState deployed on Linux is:
https://<STACKSTATE_BASE_URL>:<STACKSTATE_RECEIVER_PORT>/stsAgent/intake?api_key=<STACKSTATE_RECEIVER_API_KEY>
The <STACKSTATE_BASE_URL> and <STACKSTATE_RECEIVER_API_KEY> are set during StackState installation, for details see Linux install - configuration parameters.

JSON

Common JSON object

Topology, telemetry and health data are sent to the receiver API via HTTP POST. There is a common JSON object used for all messages.
{
"collection_timestamp": 1548855554, // the epoch timestamp for the collection
"events": {}, // used to send events data
"internalHostname": "localdocker.test", // the host sending this data
"metrics": [], // used to send metrics data
"service_checks": [],
"topologies": [], // used to send topology data
"health": // used for sending health data
}

JSON health payload

StackState accepts health data based on a chosen consistency model. The message that can be sent for each model are described on the pages below:

See also