|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Repetir instantáneas
Descripción general
Esta página describe los mensajes JSON exactos que se pueden enviar para el modelo de consistencia de Repetir instantáneas de sincronización de salud.
Propiedad JSON: "health"
La salud se puede enviar a la API del Receptor de SUSE Observabilidad utilizando la propiedad "health" del objeto JSON común.
-
Ejemplo de salud
repeat_snapshotsJSON
{
"apiKey":"<STACKSTATE_RECEIVER_API_KEY>",
"collection_timestamp":1585818978,
"internalHostname":"lnx-343242.srv.stackstate.com",
"health":[
{
"consistency_model": "REPEAT_SNAPSHOTS",
"start_snapshot": {
"repeat_interval_s": 50
//"expiry_interval_s": 200 Optional
},
"stop_snapshot": {},
"stream": {
"urn": "urn:health:sourceId:streamId"
//"sub_stream_id": "subStreamId" Optional
},
"check_states": [
{
"checkStateId": "checkStateId1",
"message": "Server Running out of disk space",
"health": "Deviating",
"topologyElementIdentifier": "server-1",
"name": "Disk Usage"
},
{
"checkStateId": "checkStateId2",
"message": "Provisioning failed. [Learn more](https://www.any-link.com)",
"health": "critical",
"topologyElementIdentifier": "server-2",
"name": "Health monitor"
}
]
}
]
}
Cada carga de datos de salud de Repetir instantáneas tiene los siguientes detalles:
-
inicio_instantánea - Opcional. El inicio de una instantánea debe ser procesado antes de procesar
check_states. Esto permite a SUSE Observability diferenciar una instantánea de flujo con la previamente recibida y eliminar estados de verificación que ya no están presentes en la instantánea. Lleva los siguientes campos como metadatos de instantánea:-
intervalo_repetición_s - Tiempo en segundos. La frecuencia con la que la fuente externa enviará datos de salud a SUSE Observability. El valor máximo permitido es 1800 (30 minutos).
-
intervalo_caducidad_s - Tiempo en segundos. El tiempo a esperar después de la última actualización antes de que un chequeo externo sea eliminado por SUSE Observability. Requerido al usar subflujos.
-
-
stop_snapshot - Optional. Una salida de una instantánea será procesada después de procesar el
estados_de_verificación. -
flujo - Objeto que proporciona identificación sobre qué instantáneas y
check_statespertenecen juntas. Contiene los campos siguientes:-
urn - Fuente de datos e ID de flujo codificados como un URN de SUSE Observabilidad que coincide con la siguiente convención:
urn:health:<sourceId>:<streamId>donde<sourceId>es el nombre de la fuente de datos externa y<streamId>es un identificador único para el flujo de datos de salud. -
sub_stream_id - Optional. Identificador para un subconjunto de los datos de salud del flujo. Cuando los datos del flujo son distribuidos y reportados por varios Agentes, esto permite ciclos de vida de instantáneas por
sub_stream_id
-
-
check_states - Una lista de estados de verificación. Cada estado de verificación puede tener los siguientes campos:
-
checkStateId - Identificador para el estado de verificación en el sistema externo.
-
message - Opcional. Mensaje a mostrar en la interfaz de usuario de SUSE Observability. Los datos se interpretarán como markdown permitiendo tener enlaces al sistema externo de verificación que generó el estado de verificación externo.
-
health - Uno de los siguientes valores de estado de salud de SUSE Observability:
Clear,Deviating,Critical. -
topologyElementIdentifier - Utilizado para vincular el estado de verificación a un elemento de topología de SUSE Observability.
-
name - Nombre del estado de verificación externo.
-
Enviar la salud a SUSE Observability
El estado puede enviarse en un mensaje JSON a través de HTTP POST. En el ejemplo a continuación, se envía una instantánea que contiene dos estados de verificación a SUSE Observability desde un único sistema de monitoreo externo.
curl -X POST \
'<STACKSTATE_RECEIVER_API_ADDRESS>' \
-H 'Content-Type: application/json' \
-d '{
"collection_timestamp": 1548857167,
"internalHostname": "local.test",
"health": [
{
"consistency_model": "REPEAT_SNAPSHOTS",
"start_snapshot": {
"repeat_interval_s": 300
},
"stop_snapshot": {},
"stream": {
"urn": "urn:health:sourceId:streamId"
},
"check_states": [
{
"checkStateId": "checkStateId1",
"message": "Server Running out of disk space",
"health": "Deviating",
"topologyElementIdentifier": "server-1",
"name": "Disk Usage"
},
{
"checkStateId": "checkStateId2",
"message": "Provisioning failed. [Learn more](https://www.any-link.com)",
"health": "critical",
"topologyElementIdentifier": "server-2",
"name": "Health monitor"
}
]
}
]
}'