Partilhar via


Monitorizar operações para o acelerador de zonas de destino do Azure Spring Apps

Este artigo fornece considerações e recomendações de observabilidade para a sua aplicação Spring Boot implementada no Azure Spring Apps.

A organização pode fornecer monitorização centralizada que é partilhada por todas as cargas de trabalho ou fornecer áreas de trabalho dedicadas do Log Analytics do Azure Monitor por carga de trabalho. Se assumir a dependência dos recursos centralizados, certifique-se de que os membros da equipa da aplicação têm acesso aos registos com as respetivas funções de controlo de acesso baseado em funções (RBAC) do Azure.

Para obter informações sobre a estrutura da plataforma, veja Gestão e monitorização de cargas de trabalho.

Pode aprovisionar os seus próprios recursos de monitorização. Esta abordagem dá mais autonomia à equipa de aplicações e simplifica a gestão geral da sua aplicação. A contrapartida pode ser um aumento da sobrecarga de gestão. O acelerador de zonas de destino do Azure Spring Apps e as seguintes orientações baseiam-se nesta abordagem.

Considerações de design

  • Registos e métricas. Recolha registos e métricas emitidos a partir da aplicação e dos recursos. Os registos fornecem informações sobre as operações da carga de trabalho. As métricas são recolhidas em intervalos regulares e fornecem informações quase em tempo real. Os registos e as métricas podem ajudar nas investigações relacionadas com o estado de funcionamento e a utilização dos recursos.

    As métricas são fundamentais para o dimensionamento de decisões. Pode permitir que as aplicações dimensionem com base em limiares de métricas ou as aplicações podem ser dimensionadas durante um período de tempo específico.

    Deve considerar armazenar estes dados para análise futura. Mantenha a capacidade de visualizar dados, para que possa detetar tendências rapidamente.

  • Instrumentação. Coloque a instrumentação no local para gerar mais dados de observabilidade a partir da aplicação. Para recolher informações de instrumentação, utilize uma ferramenta de Gestão de Desempenho de Aplicações (APM), como o agente Java do Aplicação Azure Insights. Combine diagnósticos de plataforma com estas informações para fornecer capacidades de monitorização melhoradas.

  • Rastreio distribuído. Implemente o rastreio distribuído para obter a observabilidade em diferentes serviços no ecossistema do Azure Spring Apps.

  • Alertas. As equipas de aplicações têm de ser notificadas sobre eventos importantes para a carga de trabalho. Pode definir alertas que monitorizam recursos com base em métricas, como armazenamento, taxa de pedidos e utilização de dados.

  • Sondas de estado de funcionamento. Pode configurar sondas de estado de funcionamento para detetar o estado de funcionamento dos serviços de back-end. Reveja como as sondas de estado de funcionamento são configuradas para que os pedidos sejam encaminhados para instâncias em bom estado de funcionamento e para garantir que a aplicação termina corretamente se os serviços de back-end não estiverem disponíveis.

Recomendações de conceção

  • Utilize as métricas do Azure Monitor para recolher métricas emitidas dos recursos monitorizados para uma base de dados de série temporal.

    Para o Azure Spring Apps, veja os gráficos em cada página de descrição geral da aplicação e a página de métricas comuns.

  • Utilize a página de definições de diagnóstico no Azure Spring Apps para configurar a combinação pretendida de definições de diagnóstico para as suas aplicações.

    Nota

    Existe um atraso para os registos aparecerem na sua conta de armazenamento, no hub de eventos ou no Log Analytics. Se as instâncias da aplicação Spring forem eliminadas ou movidas durante esse período, as definições de diagnóstico devem ser eliminadas para garantir que outra aplicação com o mesmo ID de recurso não reutiliza a mesma definição de diagnóstico.

  • Utilize o Application Insights como uma ferramenta consistente de Monitorização do Desempenho de Aplicações (APM) em todos os componentes da aplicação para recolher registos de aplicações, métricas e rastreios. Pode recolher dados de todas as dependências e rastreios e tem a capacidade de visualizar transações ponto a ponto.

    O Azure Spring Apps permite-lhe recolher métricas Spring Cloud Resilience4J no Application Insights. Ative o agente java In-Process e configure a coleção de dimensões para ativar esta funcionalidade.

    O Azure Spring Apps integra o Spring Cloud Sleuth e o Zipkin com o Application Insights.

  • Escolha os mecanismos de deteção de serviços que lhe permitem detetar e registar rapidamente instâncias de aplicações. As opções variam com base no escalão Azure Spring Apps.

  • Utilize sondas de preparação e liveness em conjunto para que as instâncias de aplicações em mau estado de funcionamento sejam removidas das funcionalidades de deteção de serviços.

  • Se a aplicação tiver um tempo de arranque mais longo, ajuste o tempo initialDelaySeconds + periodSeconds * failureThreshold limite total para um valor superior à hora de início da sua aplicação. Este ajuste ajuda a evitar a falha da pesquisa e força a aplicação a reiniciar.

  • Configure as suas sondas de estado de funcionamento para tomar medidas com base no comando específico da aplicação, numa ligação TCP Socket ou num pedido HTTP.

  • Para aplicações spring boot, tire partido do Indicador de Estado de Funcionamento do Actuador do Spring Boot para configurar as suas sondas de estado de funcionamento.

Passos seguintes

Acelerador de zonas de destino do Azure Spring Apps