Skip to content

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