Compartilhar via


Monitorar operações para o acelerador de zona de destino do Azure Spring Apps

Este artigo fornece considerações e recomendações de observabilidade para seu aplicativo Spring Boot implantado no Azure Spring Apps.

A organização pode fornecer monitoramento centralizado compartilhado por todas as cargas de trabalho ou fornecer workspaces dedicados do Log Analytics do Azure Monitor por carga de trabalho. Se você assumir a dependência dos recursos centralizados, verifique se os membros da equipe de aplicativos têm acesso aos logs com suas funções de RBAC (controle de acesso baseado em função) do Azure.

Para obter informações sobre o design da plataforma, consulte Gerenciamento e monitoramento de cargas de trabalho.

Você pode provisionar seus próprios recursos de monitoramento. Essa abordagem dá à equipe de aplicativos mais autonomia e simplifica o gerenciamento geral do seu aplicativo. A compensação pode ser um aumento da sobrecarga de gerenciamento. O acelerador de zona de destino do Azure Spring Apps e as diretrizes a seguir se baseiam nessa abordagem.

Considerações sobre o design

  • Logs e métricas. Colete logs e métricas emitidos do aplicativo e dos recursos. Os logs fornecem informações sobre as operações da carga de trabalho. As métricas são coletadas em intervalos regulares e fornecem insights quase em tempo real. Logs e métricas podem ajudar com investigações relacionadas à integridade e à utilização de recursos.

    As métricas são fundamentais para decisões de dimensionamento. Você pode permitir que aplicativos sejam dimensionados com base em limites de métrica ou aplicativos podem ser dimensionados durante uma janela de tempo específica.

    Você deve considerar armazenar esses dados para análise futura. Mantenha a capacidade de visualizar dados para que você possa identificar tendências rapidamente.

  • Instrumentação. Coloque a instrumentação em vigor para gerar mais dados de observabilidade do aplicativo. Para coletar informações de instrumentação, use uma ferramenta de Gerenciamento de Desempenho de Aplicativos (APM), como o agente Java do Aplicativo Azure Insights. Combine diagnóstico de plataforma com essas informações para fornecer recursos de monitoramento aprimorados.

  • Rastreamento distribuído. Implemente o rastreamento distribuído para obter observabilidade em diferentes serviços em seu ecossistema do Azure Spring Apps.

  • Alertas. As equipes de aplicativos devem ser notificadas sobre eventos importantes para a carga de trabalho. Você pode definir alertas que monitoram recursos com base em métricas, como armazenamento, taxa de solicitações e uso de dados.

  • Investigações de integridade. Você pode configurar investigações de integridade para detectar a integridade dos serviços de back-end. Examine como as investigações de integridade são configuradas para que as solicitações sejam roteadas para instâncias íntegras e para garantir que o aplicativo seja encerrado normalmente se os serviços de back-end não estiverem disponíveis.

Recomendações sobre design

  • Use as métricas do Azure Monitor para coletar métricas emitidas de recursos monitorados em um banco de dados de série temporal.

    Para o Azure Spring Apps, exiba os gráficos em cada página de visão geral do aplicativo e na página de métricas comuns.

  • Use a página de configurações diagnóstico no Azure Spring Apps para definir a combinação desejada de configurações de diagnóstico para seus aplicativos.

    Observação

    Há um atraso para que os logs apareçam em sua conta de armazenamento, no hub de eventos ou no Log Analytics. Se as instâncias do aplicativo Spring forem excluídas ou movidas durante esse período, as configurações de diagnóstico deverão ser excluídas para garantir que outro aplicativo com a mesma ID de recurso não reutilize a mesma configuração de diagnóstico.

  • Use o Application Insights como uma ferramenta consistente de APM (Monitoramento do Desempenho de Aplicativos) em todos os componentes do aplicativo para coletar logs, métricas e rastreamentos do aplicativo. Ele pode coletar dados de todas as dependências e rastreamentos e tem a capacidade de visualizar transações de ponta a ponta.

    O Azure Spring Apps permite coletar métricas do Spring Cloud Resilience4J no Application Insights. Habilite o agente de In-Process Java e configure a coleção de dimensões para habilitar esse recurso.

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

  • Escolha mecanismos de descoberta de serviço que permitem descobrir e registrar rapidamente instâncias de aplicativo. As opções variam de acordo com a camada do Azure Spring Apps.

  • Use investigações de preparação e atividade juntas para que instâncias de aplicativo não íntegras sejam removidas dos recursos de descoberta de serviço.

  • Se o aplicativo tiver um tempo de inicialização mais longo, ajuste o tempo limite initialDelaySeconds + periodSeconds * failureThreshold total para um valor maior do que a hora de início do aplicativo. Esse ajuste ajuda a evitar a falha de investigação e força o aplicativo a reiniciar.

  • Configure suas investigações de integridade para executar uma ação com base no comando específico do aplicativo, em uma conexão de soquete TCP ou em uma solicitação HTTP.

  • Para aplicativos Spring Boot, aproveite o Indicador de Integridade do Atuador do Spring Boot para configurar suas investigações de integridade.

Próximas etapas

Acelerador de zona de destino do Azure Spring Apps