Novidades no dotTrace

Esta página o guia pelas principais atualizações em versões recentes do dotTrace. Os realces incluem suporte para Visual Studio / JetBrains Rider e criação de perfil simplificado de código assíncrono.

Baixar o dotTrace

Avaliação gratuita por 30 dias disponível

Suporte a aplicativos MAUI

Suporte a aplicativos MAUI 2024.1

Agora você pode criar perfis de aplicativos baseados no framework MAUI.

No momento, o dotTrace tem suporte a:

  • macOS — aplicativos do Mac Catalyst visando o .NET 7.0 ou mais recente. Somente profiling de timelines.
  • Windows — aplicativos de WinUI visando o .NET 7.0 ou mais recente. Há suporte para todos os tipos de profiling. A anexação a aplicativos já em execução só está disponível para os tipos Timeline e Sampling.

Este suporte está disponível para o dotCover tanto stand-alone quanto integrado ao ReSharper e ao Rider.

Predefinições para profiling

Predefinições para profiling 2024.1

Agora o dotTrace inclui predefinições para a interface de usuário. Essas predefinições ajustam a interface de usuário para mostrar apenas as configurações de profiling que forem relevantes para aplicativos específicos: General (todos os tipos de aplicativos), Unity developer e Unreal Engine developer.

Melhor suporte ao macOS 2024.1

Melhoramos o profiling no macOS:

  • Agora a versão stand-alone do dotTrace permite que você especifique pacotes de aplicativos (.app) em vez de arquivos executáveis.
  • O dotTrace no Rider pode fazer profiling de configurações executadas no macOS. Os seguintes frameworks-alvo têm suporte: net7.0-macos, net8.0-macos, net7.0-maccatalyst, net8.0-maccatalyst e Xamarin.Mac.
Melhor configuração do modo de profiling Timeline

Melhor configuração do modo de profiling Timeline 2023.3

Agora, ao configurar uma sessão de profiling Timeline, você pode especificar as seguintes opções avançadas:

  • Sampling rate — permite que você encontre um equilíbrio ideal entre o desempenho da aplicação que está passando pelo profiling e a precisão dos dados.
  • Sample allocations every … KB em alocações nativas — ajuda você a melhorar o desempenho de análises de snapshots, reduzindo o tamanho dos dados coletados, ou seja, o tamanho do snapshot.
  • Download in background para arquivos de símbolos nativos — baixa arquivos de símbolos durante a sessão de profiling.
Profiling de dados na visualização Source

Profiling de dados na visualização Source 2023.3

Em vez de analisar a Call Tree, agora você pode visualizar os dados de profiling de desempenho diretamente no código-fonte. A visualização Source mostra informações sobre a distribuição de tempo de linhas específicas de código. Por enquanto, este recurso está disponível apenas para snapshots da linha do tempo criados no Windows.

Melhor análise de código nativo 2023.3

  • Agora o código-fonte dos métodos nativos pode ser visualizado no caso de snapshots da linha do tempo criados no Windows.
  • Threads nativas agora são exibidas como padrão, se não houver threads gerenciadas.

Outras melhorias 2023.3

  • Agora o modo de profiling em linha do tempo tem suporte ao provedor de dados System.Data.SqlClient nos frameworks .NET and .NET Core. Você pode visualizar os eventos correspondentes no filtro SQL Queries.
  • Agora você pode visualizar métricas de desempenho dentro da janela de pesquisa no visualizador do dotTrace.
  • Já está disponível o suporte à integração com ferramentas de terceiros no Linux e macOS.

Agrupamento por threads na amostragem, rastreamento e em snapshots linha a linha 2023.2

Agora, a visualização Call Tree permite agrupar pilhas de chamadas por threads individuais, permitindo um insight mais profundo sobre problemas de desempenho específicos de determinadas threads.

Janela de ferramentas Source View no Linux e macOS 2023.2

A versão autônoma do dotTrace no Linux e macOS ganha a janela Source View. Depois que você selecionar uma chamada em Call Tree, a janela Source View lhe mostrará o código-fonte do método correspondente.

Outras melhorias e correções de bugs 2023.2

  • Para snapshots da Timeline, agora o dotTrace Viewer mostra os nomes das threads nativas, em vez de mostrá-las todas como Native. Este recurso será útil para os desenvolvedores de Unity, permitindo a eles distinguir entre threads específicas do Unity. Disponível apenas no Windows.
  • No dotTrace Viewer, agora a janela Source View mostra o número de invocações de cada linha de código.

dotTrace para macOS e Linux Beta 2023.1

Agora a versão stand-alone do dotTrace também está disponível no Linux e no macOS e você já pode realizar todo o workflow de profiling nesses sistemas operacionais, incluindo a coleta e análise de snapshots de desempenho.

Suporte para Windows ARM64 2022.3

Agora, você pode usar o dotTrace em CPUs ARM64 no Windows. Isso se aplica a todas as versões: dotTrace standalone, dotTrace no Rider, dotTrace no Visual Studio e a ferramenta de linha de comando do dotTrace.

Suporte para Linux ARM32 2022.3

Agora, você pode executar o profiler de linha de comando dotTrace em CPUs ARM32 no Linux. Os frameworks suportados são o .NET Core 3.1 e o .NET 5.0–7.0. Observação: o tipo profiling de linha do tempo é suportado apenas para aplicações .NET 6.0.

Descarte do Performance Viewer 2022.3

Antes deste lançamento, os snapshots de amostragem, rastreamento e desempenho linha por linha precisavam ser abertos no antigo Performance Viewer, enquanto os snapshots da linha do tempo eram abertos no mais moderno Timeline Viewer. Isso piorou a experiência geral do usuário, já que os visualizadores têm diferentes interfaces de usuário e abordagens para análise de snapshots.

Estamos agora nos livrando do Performance Viewer em favor do Viewer do dotTrace (o antigo Timeline Viewer). O dotTrace o usará para abrir snapshots de todos os tipos. No entanto, se desejar, você pode continuar a usar o Performance Viewer descontinuado. Se você optar por continuar usando o Performance Viewer, gostaríamos de ouvir seus motivos. Seu feedback é muito bem-vindo!

Melhorias em análises de snapshots 2022.3

Como o Viewer do dotTrace agora abre snapshots de todos os tipos, você pode usar todos os seus poderosos recursos ao comparar snapshots de desempenho:

  • O novo conceito de “comparação como filtro” facilita a comparação de snapshots de amostragem, rastreamento e linha por linha.
  • Agora, você pode filtrar subsistemas em snapshots de amostragem, rastreamento e linha por linha.
  • O Viewer do dotTrace agora tem uma exibição Plain List. Ela está disponível para snapshots de amostragem, rastreamento e linha por linha, e também para snapshots de linha do tempo.

Suporte melhorado a chamadas nativas do sistema 2022.2

Agora o dotTrace dá mais detalhes para chamadas nativas do sistema na Timeline Call Tree, incluindo chamadas ao kernel do Windows (ntoskrnl.exe), chamadas a drivers de dispositivos (*.sys) e outras.

Melhorias no dotTrace no JetBrains Rider 2022.2

Você não precisa mais reiniciar o editor do Unity para iniciar o processo de profiling. Agora o profiler pode se anexar e desanexar dos processos do Unity em execução.

Suporte a distribuições do Linux baseadas no musl 2022.1

Agora a ferramenta de linha de comando do dotTrace e o próprio dotTrace no Rider suporta as versões 3.13–3.15 do Alpine. As seguintes CPUs e frameworks são suportados:

  • x64: .NET Core 3.1, .NET 5.0–6.0.
  • arm64: .NET 5.0–6.0.

Suporte ao formato de arquivo NetTrace do .NET Core 2022.1

Agora você pode abrir arquivos NetTrace coletados com dotnet-trace collect: a partir do menu Home do dotTrace. Clique em Open Snapshot e selecione um arquivo .nettrace.

Suporte melhorado a eventos do SQL Server 2022.1

Agora o dotTrace suporta eventos do SQL Server a partir do provedor do Microsoft.Data.SqlClient no Windows (.NET Core, .NET 5+), no macOS e no Linux (.NET Core 3.0+, .NET 5+).

Navegação pelo teclado na janela Home do dotTrace 2022.1

Agora você pode navegar pela janela Home do dotTrace usando apenas combinações de teclado. Não é necessário usar o mouse. Cada elemento da interface de usuário é atribuído a uma tecla ou a uma sequência de teclas. Há duas maneiras de ver as teclas atribuídas e interagir com os elementos da interface de usuário:

  • Mantenha Alt pressionada e pressione uma tecla ou sequência de teclas (padrão).
  • Pressione a tecla de alternância de modos e depois uma tecla ou sequência de teclas.

Você pode escolher qual dessas formas usar no dotTrace em Home | Settings.

Anexar a aplicativos usando arrastar e soltar 2022.1

Agora você pode anexar o profiler a um aplicativo já em execução simplesmente arrastando o ícone especial até a janela do aplicativo.

Melhorias na página Snapshots na janela Home do dotTrace 2022.1

  • Agora você pode editar os nomes dos snapshots.
  • Agora você pode abrir snapshots arrastando os arquivos correspondentes até a janela Home do dotTrace.
  • Agora a lista de snapshots preserva o estado de ordenação entre inicializações do dotTrace.
  • Agora a lista de snapshots usa o formato de data do sistema.

Outras melhorias 2022.1

  • Agora você pode desativar o salvamento automático de snapshots. Se você fizer isso, quando você fechar a Timeline ou o Performance Viewer, o dotTrace perguntará se você deseja salvar os snapshots obtidos.
  • Agora é possível fixar tópicos no filtro Threads no Timeline Viewer.
  • Agora a ferramenta Configuration2Xml usa a mesma interface de usuário que a janela Home do dotTrace.

Suporte a processadores Apple Silicon 2021.3

A ferramenta de linha de comando dotTrace agora funciona em computadores com processadores Apple Silicon. Você pode usá-la para profiling de aplicativos .NET 6 (modo nativo) e .NET 5 (modo Rosetta 2).

Melhorias de desempenho 2021.3

  • Reduzimos o overhead de desempenho do profiling do Timeline em aplicações que usam muitas chamadas async.
  • Melhoramos o desempenho das operações de abrir e filtrar snapshots de Timeline.

Salvar o estado da interface de usuário em snapshots do Timeline 2021.3

Quando você fecha uma snapshot do Timeline, o dotTrace salva o estado da interface de usuário, incluindo os intervalos de tempo selecionados, os filtros aplicados, etc. Na próxima vez em que você abrir o snapshot, o dotTrace irá restaurar a interface de usuário ao mesmo estado.

Suporte a eventos de TPL no macOS e Linux 2021.3

A ferramenta de linha de comando dotTrace, inclusive no Rider, agora permite que você obtenha dados sobre chamadas assíncronas no macOS e no Linux. Para obter esses dados, use o modo de profiling do Timeline. A Call Tree mostra as chamadas assíncronas, incluindo awaits e continuations.

Suporte melhorado a processos-filho no macOS e Linux 2021.3

A ferramenta de linha de comando dotTrace, inclusive no Rider, agora pode fazer profiling de processos-filho de aplicações no macOS e no Linux, no modo de profiling do Timeline. Esse suporte só está disponível para aplicativos que usem .NET 5 ou mais recente.

Criação de perfil nativa 2021.2

Agora, é possível criar perfis de aplicações nativas no Windows. Ao iniciar uma sessão de criação de perfil, você tem a opção de baixar arquivos de símbolos de fontes nativos de servidores remotos. A criação de perfil nativa está disponível apenas para o tipo de criação de perfil Timeline.

Criação de perfil Timeline no macOS e Linux 2021.2

Agora, você pode criar perfis de aplicações .NET Core e .NET no macOS e Linux usando o tipo de criação de perfil Timeline.

Nova tela inicial 2021.1

Reformulamos completamente a tela inicial do dotTrace. É muito mais fácil configurar e iniciar novas sessões de definição de perfil, trabalhar com snapshots e realizar outras operações básicas.

Profiler de linha de comando como uma ferramenta .NET global

Profiler de linha de comando como uma ferramenta .NET global 2021.1

Você pode instalar e usar o profiler de linha de comando dotTrace como uma ferramenta global dotnet: dotnet tool install --global JetBrains.dotTrace.GlobalTools --version 2021.1.0

Baixar o dotTrace

Avaliação gratuita por 30 dias disponível