Integridade das Aplicações com .Net Core 2.2 — /Health
Nesse artigo, vamos demonstrar como verificar a integridade de uma aplicação .NET Core 2.2 e dos seus respectivos serviços, utilizando o Health Check.


Introdução
Nesse artigo, vamos demonstrar como verificar a integridade de uma aplicação .NET↳.NET113 conteúdosNovidades do .NET 9 – o tipo genérico OrderedDictionaryDev (Back & Front) · dez 2024Novidades .NET 10: novas formas de uso do .NET CLIDev (Back & Front) · dez 2025Novidades do .NET 5: implementando um proxy reverso com YARP + ASP.NET 5Dev (Back & Front) · nov 2020Ver tudo em Dev (Back & Front) → Core 2.2 e dos seus respectivos serviços utilizando o Health Check, que é uma funcionalidade interna de verificação de integridade.
Dessa forma, conseguimos monitorar em tempo real (via HTTP) os recursos físicos do servidor, como o uso de disco, memória e outros. Também é possível verificar a integridade das dependências de aplicativos externos como banco de dados↳Banco de dados134 conteúdosSQL ou NoSQL: eis a questão!!Data · mar 2020Banco de dados: como organizar e dar segurança para milhões de dados de loteriasData · mai 20215 serviços gratuitos na cloud para bancos de dados PostgresData · fev 2025Ver tudo em Data →, RabbitMQ e etc.
Mão na Massa
Para nosso exemplo, vamos simular uma aplicação que se comunica com 3 serviços diferentes: o MongoDB, o MySQL e o RabbitMQ.
Caso algum desses serviços não esteja no ar, nossa aplicação não irá funcionar e é papel do monitoramento de integridade nos informar essa indisponibilidade.
Ou seja, para o app estar com um estado Health (saudável,) é preciso que os seus serviços também estejam saudáveis.
Implementado o Health Check
Vamos entrar na classe Startup e modificar o método ConfigureServices e adicionar: “services. AddHealthChecks()” .

Em seguida vamos modificar o método Configure e adicionar o middleware:

Será por meio desse endpoint “/health” que o nosso sistema vai disponibilizar as verificações de integridade.

Agora que adicionamos o “/health”, vamos implementar os checks para cada serviço. Vá até o nugget e baixe os pacotes:

Após o download dos pacotes NuGet, vamos adicionar os checks no ConfigureServices:

Note que estamos adicionando um check para cada serviço e o HelthChecksUI para criarmos a interface.
Vamos adicionar no Configure o código abaixo para conseguirmos visualizar os checks através da Ui. Iremos acessá-lo pelo caminho “/health-ui” .

Por fim, vamos configurar o appsettings.json. É nele onde estão as conexões para os serviços. Além disso, iremos adicionar o “HealthChecks-UI”. Em URI, adicione a URL que está exportando o health.

Executando a aplicação
Agora é só executar a aplicação e acessar o /health e o /health-ui que seu app já está sendo monitorado.


Note que conseguimos realizar o monitoramento e verificar que a aplicação não está Health, pois o serviço MySql está fora do ar.
O monitoramento de integridade é extremamente importante quando se está trabalhado com microsserviços.

Artigo cedido colaborativamente por Rodolfo dos Santos Pinto.
Texto publicado anteriormente aqui.








