Exercício – monitoramento do desempenho de aplicativos
Neste exercício, com a configuração zero, você vai monitorar facilmente fluxos de dados para seu aplicativo de exemplo.
Monitorar o aplicativo com o Azure Application Insights
O Mapa do Aplicativo ajuda a identificar gargalos de desempenho ou hotspots com falha em todos os componentes do aplicativo distribuído.
Abra o portal do Azure.
Selecione Aplicativos Spring do Azure na lista de serviços do Azure.
Selecione sua instância dos Aplicativos Spring do Azure.
Selecione Application Insights para acessar a página visão geral do Application Insights.
À esquerda, navegue até o Mapa do Aplicativo, onde você verá uma exibição de seus microsserviços dos Aplicativos Spring do Azure:
O Mapa do aplicativo mostra aplicativos que estão operando corretamente (verde) e aplicativos com gargalos (vermelho).
No mapa do aplicativo anterior, cada nome em uma caixa verde é um serviço diferente dos Aplicativos Spring do Azure.
Você pode identificar facilmente problemas em seus aplicativos e solucioná-los rapidamente. Cada nó do mapa representa um microsserviço ou as respectivas dependências, com status de alerta e KPI de integridade. Você pode selecionar qualquer componente para obter diagnóstico mais detalhado, como eventos do Application Insights.
Desempenho
À esquerda, navegue até Desempenho, em que você pode ver tempos de resposta e contagens de solicitação para operações expostas por seus aplicativos.
Em seguida, à direita, navegue até Dependências, em que você pode ver todas as suas dependências e seus tempos de resposta e contagens de solicitação.
Você pode ver o número de desempenho para dependências, principalmente chamadas SQL:
Selecione uma instrução SQL na guia Selecionar operação para ver a transação no contexto:
Em seguida, na guia à direita, selecione Analisar, selecione uma amostra do SQL para abrir a janela de detalhes da transação:
Por fim, na exibição Detalhes da transação de ponta a ponta, exiba a transação de instrução SQL de exemplo selecionando a instrução SQL:
Falhas/exceções
Selecione Falhas no menu do recurso Application Insights, localizado na seção Investigar. Nessa exibição, você verá os três principais códigos de resposta de falha, os três principais tipos de exceção e os três principais tipos de dependência com falha.
No lado direito, selecione uma exceção em Três principais tipos de exceção para obter insights relevantes e rastreamento de pilha acionável:
Em seguida, na guia à direita, selecione o exemplo de exceção Sugerida para abrir a janela de detalhes da transação:
Em seguida, exiba as propriedades da exceção na janela Detalhes da transação de ponta a ponta:
Por fim, no meio da tela, na guia Transação de ponta a ponta, selecione uma exceção para exibir seus detalhes e o rastreio de pilha:
Métricas
O Spring Boot registra muitas métricas principais: JVM, CPU, Tomcat, Logback e assim por diante. Você pode ver as métricas contribuídas por aplicativos Spring Boot, módulos dos Aplicativos Spring e dependências.
Para criar um gráfico de métrica padrão, na seção Monitoramento, abra a guia Métricas e siga estas etapas:
Verifique se o Azure Spring Apps está selecionado em Escopo e Azure Spring Apps no Namespace da Métrica. Ambos já terão sido preenchidos se você abriu o Metrics Explorer por meio do menu de um recurso.
Em seguida, em Métricas, selecione Uso de CPU do aplicativo e, em Agregação, selecione Média:
Em seguida, salve a primeira métrica selecionando o ícone de Tique na barra de métrica à direita.
Em seguida, adicione outra métrica selecionando a ação Adicionar métrica na barra de ferramentas superior esquerda e adicione system.cpu.usage em Métrica e Média em Agregação.
Em seguida, salve a segunda métrica selecionando o ícone de Tique na barra de métrica à direita.
Por fim, inspecione o grafo de métricas, mostrando as métricas de CPU do aplicativo e do sistema.
Métricas personalizadas
Ao implantar recursos e aplicativos no Azure, é melhor começar a coletar dados telemétricos para obter percepções sobre sua integridade e desempenho. O Azure disponibiliza algumas métricas para você imediatamente. Essas métricas são chamadas de padrão ou plataforma. No entanto, eles são limitados por natureza. Você pode querer coletar alguns indicadores de desempenho personalizados ou métricas específicas de negócios para fornecer insights mais profundos.
Da mesma forma que o gráfico de métrica padrão, para criar um gráfico de métrica personalizado, na seção Monitoramento, abra a guia Métricas e siga estas etapas:
Verifique se o Azure Spring Apps está selecionado no seletor de escopo do recurso. Ele já terá sido preenchido se você abriu o Metrics Explorer pelo menu de um recurso.
Em seguida, em Namespace de Métrica, selecione o namespace azure.applicationinsights. O namespace é apenas uma maneira de organizar as métricas para que você possa encontrá-las com facilidade.
Em seguida, em Métricas, adicione as seguintes métricas personalizadas e agregação:
Em seguida, no lado superior direito, altere o tipo de grafo para Gráfico de Área.
O grafo final mostrará as contagens nas últimas 24 horas para cada um dos microsserviços do animal de estimação e do proprietário:
Live Metrics
Ao implantar uma nova versão do seu aplicativo Web, você quer saber imediatamente seu efeito sobre o desempenho. Os tempos de resposta melhoraram ou pioraram ou estão apresentando falhas? Quando você observa o Live Metrics Stream no Application Insights enquanto sua implantação está acontecendo, você vê o efeito imediatamente. Se houver problemas, você poderá fazer backup da implantação antes que muitos usuários sejam afetados.
O Live Metrics Stream permite investigar o coração dos seus aplicativos dinâmicos. Você pode selecionar e filtrar as métricas e os contadores de desempenho para observar em tempo real, sem nenhum efeito sobre o serviço. Você também pode inspecionar rastreamentos de pilha de exemplos de solicitações e exceções com falha.
À esquerda, em Investigar, navegue até Métricas dinâmicas, nas quais você pode ver métricas dinâmicas praticamente em tempo real (em até um segundo):
Role para baixo as métricas para ver as métricas para cada microsserviço: