Health API
Todas las aplicaciones Platform API viene incorporadas con un endpoint /health
por default, el cual nos permite conocer la salud del servicio. Esto es importarte, ya que la aplicación nos da la posibilidad de monitorear el estado de la misma.
Salud del Servicio¶
La información de salud se recopila a partir del contenido de todos los componentes que implementen la interfaz IHealthIndicator
definidas en el contenedor de IoC. Platform incluye una cantidad de HealthIndicators que se puden incluir, pero también se pueden desarrollar nuevos. De forma predeterminada, el estado final del sistema se deriva de HealthAggregator
que clasifica los estados de cada IHealthIndicator
según una lista ordenada de estados. El primer estado en la lista ordenada se usa como el estado de salud general. Si ningún IHealthIndicator
devuelve un estado que sea conocido por el HealthAggregator
, se usa un estado UNKNOWN.
Uso¶
Por defecto al invocar el endpoint GET /health
obtendremos la siguiente respuesta:
{
"status": {
"code": "UNKNOWN",
"description": ""
},
"details": {}
}
Out-of-the-box HealthIndicators¶
Como se menciono anteriormente Platform cuanta con algunos HealthIndicators para las tecnologías usadas frecuentemente, a continuación se puede ver una lista de los mismos.
Nombre | Nuget | Descripción |
---|---|---|
IbmMQHealthIndicator |
Infra.HealthCheck.IbmMQ | Verifica el estado del MQ. |
IbmMQQueueHealthIndicator |
Infra.HealthCheck.IbmMQ | Verifica el estado de una queue. |
ElasticSearchHealthIndicator |
Infra.HealthCheck.Elasticsearch | Verifica el estado del cluster |
ElasticSearchIndexHealthIndicator |
Infra.HealthCheck.Elasticsearch | Verifica el estado de un indice |
MongoDBHealthIndicator |
Infra.HealthCheck.MongoDB | Verifica el estado de la base de datos |
OracleHealthIndicator |
Infra.HealthCheck.Oracle | Verifica el estado de la base de datos |
RedisHealthIndicator |
Infra.HealthCheck.Redis | Verifica el estado del servidor de Redis |
RedisKeyHealthIndicator |
Infra.HealthCheck.Redis | Verifica el estado de una Key de Redis |
SqlServerHealthIndicator |
Infra.HealthCheck.SqlServer | Verifica el estado de la base de datos |