Gerencie e monitore o aplicativo com o Spring Boot Actuator

Nota

Azure Spring Apps é o novo nome para o serviço Azure Spring Cloud. Embora o serviço tenha um novo nome, você verá o nome antigo em alguns lugares por um tempo enquanto trabalhamos para atualizar ativos, como capturas de tela, vídeos e diagramas.

Este artigo aplica-se a: ✔️ Java ❌ C#

Este artigo aplica-se a: ✔️ Basic/Standard ✔️ Enterprise

O Spring Boot Actuator traz funcionalidades prontas para produção às suas aplicações. Você pode monitorar facilmente seu aplicativo, coletar métricas e entender o status ou a atividade do banco de dados com essa ferramenta. Você ganha acesso a ferramentas de nível profissional sem precisar criá-las do zero.

O atuador expõe dados operacionais vitais sobre seu aplicativo em execução, como status de integridade, métricas, informações e muito mais. O atuador usa pontos de extremidade HTTP ou Java Management Extensions (JMX), facilitando a interação. Depois de integrá-lo, ele fornece vários pontos de extremidade padrão e, como outros módulos Spring, é facilmente configurável e extensível.

O Azure Spring Apps usa o atuador para enriquecer métricas por meio de JMX. Ele também pode funcionar com o Application Live View no plano Enterprise para ajudá-lo a obter e interagir com os dados dos aplicativos.

Diagrama que mostra o fluxo de dados usando o Spring Boot Actuator.

Configurar o Spring Boot Actuator

As seções a seguir descrevem como configurar o atuador.

Adicionar dependência do atuador

Para adicionar o atuador a um projeto baseado em Maven, adicione a seguinte dependência:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
</dependencies>

Essa configuração funciona com qualquer versão do Spring Boot porque as versões são abordadas na lista de materiais (BOM) do Spring Boot.

Configurar o ponto de extremidade do atuador

Por padrão, um aplicativo Spring Boot expõe apenas o health ponto de extremidade. Para observar a configuração e o ambiente configurável, use as seguintes etapas para habilitar os env pontos de extremidade e configprops também:

  1. Vá para o painel Visão geral do aplicativo, selecione Configuração no menu de configuração e, em seguida, vá para a página Configuração de variáveis de ambiente.

  2. Adicione as seguintes propriedades como no formulário "chave:valor". Esse ambiente abre os seguintes pontos de extremidade do Spring Actuator: health, enve configprops.

    management.endpoints.web.exposure.include: health,env,configprops
    
  3. Selecione Guardar. Seu aplicativo é reiniciado automaticamente e carrega as novas variáveis de ambiente.

Agora você pode voltar para o painel Visão geral do aplicativo e aguardar até que o Status de provisionamento mude para Êxito.

Para visualizar todos os endpoints internos e configurações relacionadas, consulte a seção Exposing Endpoints de Spring Boot Production-ready Features.

Ponto final seguro do atuador

Quando você abre o aplicativo para o público, esses pontos de extremidade atuadores também são expostos ao público. Recomendamos que você oculte todos os pontos de extremidade definindo management.endpoints.web.exposure.exclude=*, porque a exclude propriedade tem precedência sobre a include propriedade. Essa ação bloqueia o Application Live View no plano Enterprise e outros aplicativos ou ferramentas que dependem do ponto de extremidade HTTP atuador.

No plano Enterprise, há duas maneiras de proteger o acesso:

  • Você pode desativar o endpoint público de aplicativos e configurar uma regra de roteamento no VMware Spring Cloud Gateway para desabilitar o acesso ao atuador do público. Para obter mais informações, consulte Configurar o VMware Spring Cloud Gateway.

  • Você pode configurar o atuador para escutar em uma porta HTTP diferente do aplicativo principal. Em um aplicativo autônomo, a porta HTTP atuadora assume como padrão a mesma porta HTTP principal. Para que o aplicativo ouça em uma porta diferente, defina a management.server.port propriedade. O Modo de Exibição Dinâmico do Aplicativo não consegue detetar automaticamente essa alteração de porta, portanto, você também precisa configurar a propriedade em uma implantação do Azure Spring Apps. Em seguida, o atuador não é acessível publicamente, mas o Application Live View pode ler a partir do ponto de extremidade do atuador através de outra porta. Para obter mais informações, consulte Usar o Modo de Exibição ao Vivo do Aplicativo com o plano do Azure Spring Apps Enterprise.

Próximos passos