Skip to content

Elasticsearch Health Indicator

Permite verificar el estado de un cluster de elasticsearch.

Registrar en el contenedor de IoC

Para registrar el HealthIndicator solo deberemos pasar como parametro la URL del cluster de elasticsearch.

    public void Configure(IWebHostBuilder builder)
    {
      builder.ConfigureServices((ctx, c) =>
      {
        c.AddSingleton<IHealthIndicator, ElasticsearchHealthIndicator>(s => 
          new ElasticsearchHealthIndicator("http://elastic.test.andreani.com.ar:9200")
        );
      });
    }

Una vez que llamemos al /health endpoint, podremos visualizar lo siguiente:

{
    "status": {
        "code": "UP",
        "description": ""
    },
    "details": {
        "elasticsearchHealthIndicator": {
            "status": {
                "code": "UP",
                "description": ""
            },
            "details": {
                "cluster": "itg-busqueda-test",
                "status": "yellow",
                "node.total": "1",
                "node.data": "1",
                "shards": "65",
                "active_shards_percent": "50.0%"
            }
        }
    }
}