Send health data over HTTP
Overview
SUSE Observability can synchronize health information from your own data sources either via HTTP or the SUSE Observability CLI.
|
A service token must be used instead of API key as they are synonymous. |
SUSE Observability Receiver API
The SUSE Observability 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>.
The <STACKSTATE_RECEIVER_API_ADDRESS> for SUSE Observability deployed on Kubernetes or OpenShift is:
https://<STACKSTATE_BASE_URL>/receiver/stsAgent/intake?api_key=<STACKSTATE_SERVICE_TOKEN>
The <STACKSTATE_BASE_URL> and <STACKSTATE_RECEIVER_API_KEY> are set during SUSE Observability installation, for details see Kubernetes 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
SUSE Observability accepts health data based on a chosen consistency model. The message that can be sent for each model are described on the pages below: