Aplicativos de produção de perfil no Azure com o Application Insights Profiler
Diagnosticar os problemas de desempenho do seu aplicativo pode ser difícil, especialmente quando ele é executado em um ambiente de produção na nuvem dinâmica. Respostas lentas em seu aplicativo podem ser causadas por infraestrutura, estrutura ou código do aplicativo que está tratando a solicitação no pipeline.
Com o Application Insights Profiler, você pode capturar, identificar e exibir rastreamentos de desempenho para seu aplicativo em execução no Azure, independentemente do cenário. O processo de rastreamento do Profiler ocorre automaticamente, em escala, e não afeta negativamente seus usuários. O Criador de Perfil identifica:
- Os tempos de resposta medianos, mais rápidos e mais lentos para cada solicitação da Web feita por seus clientes.
- O caminho de código "quente" que gasta mais tempo lidando com uma determinada solicitação da Web.
Habilite o Criador de Perfil em todos os aplicativos do Azure para coletar dados com os seguintes gatilhos:
- Gatilho de amostragem: inicia o criador de perfil aleatoriamente cerca de uma vez por hora por dois minutos.
- Gatilho da CPU: inicia o criador de perfil quando o percentual de uso da CPU é superior a 80%.
- Gatilho de memória: inicia o criador de perfil quando o uso de memória está acima de 80%.
Cada um desses acionadores pode ser configurado, ativado ou desativado.
Taxa de amostragem e sobrecarga
O Criador de Perfil é executado aleatoriamente dois minutos por hora em cada máquina virtual que hospeda aplicativos com o Criador de Perfil ativado.
Observação
Quando o Profiler executa e coleta rastreamentos ativamente, ele normalmente adiciona entre 5% a 15% da CPU e sobrecarga de memória ao servidor.
Não há custo adicional para armazenar os dados capturados pelo Profiler. Os dados são excluídos automaticamente após 15 dias.
Com suporte no Profiler
O profiler trabalha com aplicativos .NET implantados nos seguintes serviços do Azure. Nos links abaixo, veja instruções específicas para habilitar o Profiler para cada tipo de link a seguir.
Plataforma de computação | .NET (>= 4.6) | .NET Core |
---|---|---|
Serviço de Aplicativo do Azure | Sim | Sim |
Máquinas Virtuais do Azure e Conjuntos de Dimensionamento de Máquinas Virtuais para Windows | Sim | Sim |
Máquinas Virtuais do Azure e Conjuntos de Dimensionamento de Máquinas Virtuais para Linux | Não | Sim |
Serviços de Nuvem do Azure | Sim | Sim |
Instâncias de Contêiner do Azure para Windows | No | Sim |
Instâncias de Contêiner do Azure para Linux | No | Sim |
Kubernetes | No | Sim |
Azure Functions | Sim | Sim |
Azure Service Fabric | Sim | Sim |
Observação
Você também pode usar o Java Profiler para o Application Insights do Azure Monitor, atualmente em versão prévia.
Se você habilitou o Profiler, mas não está vendo os rastreamentos, verifique nosso Guia de solução de problemas.
Limitações
- Retenção de dados: O período de retenção de dados padrão é de cinco dias.
- Criação de perfil de aplicativos Web:
- Ainda que você possa usar o criador de perfil sem custo extra, seu aplicativo Web deverá estar hospedado, no mínimo, na camada Básica do recurso de Aplicativos Web do Serviço de Aplicativo do Azure.
- Você pode anexar um criador de perfil para cada aplicativo Web.
- O Profiler no Linux só é compatível com aplicativos Web baseados em Windows.
Próximas etapas
Saiba como habilitar o Criador de Perfil em seu serviço do Azure: