Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Por Mike Rousos
Este artigo lista ferramentas para diagnosticar problemas de desempenho no ASP.NET Core.
Para obter informações sobre Blazor WebAssembly ferramentas e contadores de diagnóstico de desempenho, consulte diagnósticos das ferramentas de desenvolvedor do navegador do ASP.NET Core Blazor WebAssembly e diagnósticos do ASP.NET Core Event Pipe Blazor WebAssembly.
Ferramentas de diagnóstico do Visual Studio
As ferramentas de criação de perfil e diagnóstico incorporadas no Visual Studio são um bom lugar para começar a investigar problemas de desempenho. Essas ferramentas são poderosas e convenientes de usar a partir do ambiente de desenvolvimento do Visual Studio. As ferramentas permitem a análise do uso da CPU, uso de memória e eventos de desempenho em aplicativos ASP.NET Core. Estar integrado facilita a criação de perfis no momento do desenvolvimento.
Mais informações estão disponíveis na documentação do Visual Studio.
Application Insights
O Application Insights fornece dados de desempenho detalhados para seu aplicativo. O Application Insights coleta automaticamente dados sobre taxas de resposta, taxas de falha, tempos de resposta de dependência e muito mais. O Application Insights oferece suporte ao registro de eventos personalizados e métricas específicas para seu aplicativo.
O Azure Application Insights fornece várias maneiras de fornecer informações sobre aplicativos monitorados:
Mapa de aplicativos – ajuda a identificar gargalos de desempenho ou pontos críticos de falha em todos os componentes de aplicativos distribuídos.
O Azure Metrics Explorer é um componente do portal do Microsoft Azure que permite plotar gráficos, correlacionar visualmente tendências e investigar picos e quedas nos valores das métricas.
Folha de desempenho no portal do Application Insights:
- Mostra detalhes de desempenho para diferentes operações no aplicativo monitorado.
- Permite a perfuração em uma única operação para verificar todas as peças/dependências que contribuem para uma longa duração.
- O Profiler pode ser invocado a partir daqui para coletar rastreamentos de desempenho sob demanda.
O Azure Application Insights Profiler permite a criação de perfis regulares e sob demanda de aplicativos .NET. O portal do Azure mostra rastreamentos de desempenho capturados com pilhas de chamadas e caminhos ativos. Os arquivos de rastreamento também podem ser baixados para uma análise mais profunda usando o PerfView.
O Application Insights pode ser usado em uma variedade de ambientes:
- Otimizado para trabalhar no Azure.
- Trabalha na produção, desenvolvimento e encenação.
- Funciona localmente a partir do Visual Studio ou em outros ambientes de hospedagem.
Para obter mais informações sobre monitoramento baseado em código, consulte Application Insights for ASP.NET Core. Para obter mais informações sobre monitoramento sem código, consulte Monitorar o desempenho do Serviço de Aplicativo do Azure.
PerfView
PerfView é uma ferramenta de análise de desempenho criada pela equipe do .NET especificamente para diagnosticar problemas de desempenho do .NET. O PerfView permite a análise do uso da CPU, memória e comportamento do GC, eventos de desempenho e tempo de relógio de parede.
Para obter mais informações sobre o PerfView, consulte o guia do usuário disponível na ferramenta ou no GitHub.
Toolkit de Desempenho do Windows (Windows Performance Toolkit)
O Kit de Ferramentas de Desempenho do Windows (WPT) consiste em dois componentes: WPR (Gravador de Desempenho do Windows) e WPA (Analisador de Desempenho do Windows). As ferramentas produzem perfis de desempenho detalhados de sistemas operacionais e aplicativos Windows. O WPT tem maneiras mais ricas de visualizar dados, mas sua coleta de dados é menos poderosa do que a do PerfView.
PerfCollect
Embora o PerfView seja uma ferramenta de análise de desempenho útil para cenários .NET, ele só é executado no Windows, portanto, você não pode usá-lo para coletar rastreamentos de aplicativos ASP.NET Core em execução em ambientes Linux.
PerfCollect é um script bash que usa ferramentas nativas de criação de perfil do Linux (Perf e LTTng) para coletar vestígios no Linux que podem ser analisados pelo PerfView. O PerfCollect é útil quando problemas de desempenho aparecem em ambientes Linux onde o PerfView não pode ser usado diretamente. Em vez disso, PerfCollect pode coletar rastreamentos de aplicativos .NET que são analisados em um computador Windows usando PerfView.
Mais informações sobre como instalar e começar a usar o PerfCollect estão disponíveis no GitHub.
Outras ferramentas de desempenho de terceiros
A lista a seguir lista algumas ferramentas de desempenho de terceiros que são úteis na investigação de desempenho de aplicativos .NET.
- MiniProfiler
- dotTrace e dotMemory da JetBrains
- VTune , Intel