Nouveautés de dotTrace

Cette page détaille les dernières nouveautés et modifications apportées à dotTrace.

Télécharger dotTrace

Essai gratuit sur 30 jours disponible

Undo/Redo et historique des filtres 2024.3

Nous avons introduit la prise en charge complète des actions Undo et Redo et de l'historique des filtres dans la version autonome de dotTrace. Chaque changement de filtre est à présent enregistré, ce qui facilite le retour à n'importe quel état précédent. Utilisez le bouton Undo ou le raccourci clavier pour annuler la dernière modification et le bouton Redo pour la réappliquer. Vous pouvez également accéder à une liste déroulante pour annuler plusieurs étapes à la fois, où les modifications sont répertoriées dans l'ordre chronologique.

Performances améliorées 2024.2

Toutes les versions de dotTrace ont fait l'objet de plusieurs améliorations des performances, avec notamment un traitement plus rapide des instantanés de Timeline et des données des vues Call Tree et Hotspots.

Autres améliorations et correctifs de bugs 2024.2

  • dotTrace Viewer utilise maintenant un nouveau moteur de rendu sur toutes les plateformes. En cas de problèmes avec la mise à jour du visualiseur, vous pouvez désactiver l'option Use new cross-platform dotTrace Viewer by default dans dotTrace Home | Settings.
  • La version autonome de dotTrace sous macOS et Linux inclut la fenêtre Options.
  • Nous avons résolu le problème relatif aux événements de noyau manquants sous Windows : les événements d'échantillonnage du noyau ne figuraient plus dans les instantanés Timeline en raison des interférences de Windows Defender.
  • Nous avons également apporté des améliorations plus limitées et des correctifs de bugs pour plus d'ergonomie.
Prise en charge des applications MAUI

Prise en charge des applications MAUI 2024.1

Vous pouvez désormais profiler des applications basées sur le framework MAUI.

Actuellement, dotTrace prend en charge :

  • macOS – Applications Mac Catalyst ciblant .NET 7.0+. Mode de profilage chronologique uniquement.
  • Windows – Applications WinUI ciblant .NET 7.0+. Tous les types de profilage sont pris en charge. L'attachement à des applications déjà en cours d'exécution est uniquement disponible pour les types Timeline et Sampling.

La prise en charge est disponible pour dotTrace Standalone et dotTrace Intégrated dans Rider et ReSharper.

Préréglages de profilage

Préréglages de profilage 2024.1

dotTrace inclut désormais les préréglages d'interface utilisateur. Les préréglages ajustent l'interface utilisateur pour afficher uniquement les paramètres de profilage s'appliquant à des applications spécifiques : General (tous les types d'applications), Unity developer et Unreal Engine developer.

Amélioration de la prise en charge de macOS 2024.1

Nous avons amélioré le profilage sous macOS :

  • Désormais, la version autonome de dotTrace vous permet de spécifier des ensembles d'applications (.app) au lieu de fichiers exécutables.
  • dotTrace dans Rider permet de profiler les configurations d'exécution de macOS. Les frameworks cibles pris en charge sont : net7.0-macos, net8.0-macos, net7.0-maccatalyst, net8.0-maccatalyst, Xamarin.Mac.
Configuration améliorée pour le mode de profilage Timeline

Configuration améliorée pour le mode de profilage Timeline 2023.3

Désormais, lors de la configuration d'une session de profilage Timeline, vous pouvez spécifier les options avancées suivantes :

  • Sampling rate : vous permet de trouver l'équilibre optimal entre les performances de l'application profilée et l'exactitude des données.
  • Sample allocations every … KB pour les allocations natives : vous aide à améliorer les performances de l'analyse des instantanés en réduisant la quantité de données collectées, c'est-à-dire la taille de l'instantané.
  • Download in background pour les fichiers de symboles natifs : télécharge les fichiers de symboles pendant la session de profilage.
Profilage des données dans la vue Source

Profilage des données dans la vue Source 2023.3

Au lieu d'analyser l'arborescence Call Tree, vous pouvez désormais afficher les données de profilage des performances directement dans le code source. La vue Source affiche les informations de distribution du temps pour des lignes de code spécifiques. Pour l'instant, cette fonctionnalité est uniquement disponible pour les instantanés de Timeline pris sous Windows.

Analyse de code native améliorée 2023.3

  • Vous pouvez maintenant consulter le code source des méthodes natives pour les instantanés Timeline pris sous Windows.
  • Les threads natifs sont désormais affichés par défaut s'il n'y a pas de threads gérés.

Autres améliorations 2023.3

  • Le mode de profilage Timeline prend désormais en charge le fournisseur de données System.Data.SqlClient pour les frameworks .NET et .NET Core. Vous pouvez afficher les événements correspondants dans le filtre SQL Queries.
  • Vous pouvez désormais afficher les mesures de performances dans la fenêtre de recherche de la visionneuse dotTrace.
  • La prise en charge de l'intégration avec des outils tiers est désormais disponible sous Linux et macOS.

Groupement par thread pour l'échantillonnage, les traces et les instantanés ligne par ligne 2023.2

Désormais, la vue Call Tree permet de grouper les piles d'appels par fils individuels, afin de mieux comprendre les problèmes de performances propres aux threads.

Fenêtre d'outils Source View sous Linux et macOS 2023.2

La version autonome de dotTrace sous Linux et macOS inclut la fenêtre Source View. Lorsque vous sélectionnez un appel dans Call Tree, Source View affiche le code source de la méthode correspondante.

Autres améliorations et correctifs de bugs 2023.2

  • Pour les instantanés de chronologie, dotTrace Viewer montre désormais les noms des threads natifs au lieu de tous les présenter en tant que Native. Cette fonctionnalité est particulièrement intéressante pour les développeurs Unity, car elle leur permet de distinguer les threads Unity spécifiques. Disponible uniquement sous Windows.
  • La fenêtre Source View de dotTrace Viewer affiche désormais le nombre d'appels pour chaque ligne de code.

dotTrace pour macOS et Linux Bêta 2023.1

La version autonome de dotTrace est désormais disponible sous Linux et macOS. Vous pouvez ainsi exécuter l'intégralité du workflow de profilage sur ces systèmes d'exploitation, y compris la collecte et l'analyse des instantanés de performances.

Prise en charge de Windows ARM64 2022.3

Vous pouvez désormais utiliser dotTrace sur les CPU ARM64 sous Windows. Cela s'applique à toutes les versions : dotTrace standalone, dotTrace dans Rider, dotTrace dans Visual Studio, et l'outil de ligne de commande dotTrace.

Prise en charge de Linux ARM32 2022.3

Vous pouvez désormais exécuter le profileur en ligne de commande dotTrace sur les CPU ARM32 sous Linux. Les frameworks .NET Core 3.1 et .NET 5.0-7.0 sont pris en charge. Notez que le type de profilage chronologique n'est pris en charge que pour les applications .NET 6.0.

Disparition du Performance Viewer 2022.3

Avant cette version, l'échantillonnage, le traçage et les instantanés de performance ligne par ligne devaient être ouverts dans l'ancien Performance Viewer, tandis que les instantanés de chronologie étaient ouverts dans Timeline Viewer. Cela affectait l'expérience utilisateur globale, car l'interface utilisateur et l'approche de l'analyse des instantanés différaient dans ces deux visionneuses.

C'est pourquoi nous Performance Viewer pour la remplacer par la visionneuse Viewer de dotTrace (anciennement Timeline Viewer). dotTrace l'utilisera pour ouvrir des instantanés de tout type. Vous pouvez toutefois continuer à utiliser Performance Viewer si vous le souhaitez. Si vous préférez continuer avec Performance Viewer, nous aimerions connaître vos raisons, n'hésitez pas à nous en faire part !

Améliorations pour l'analyse des instantanés 2022.3

dotTrace Viewer pouvant désormais ouvrir des instantanés de tout type, vous pouvez utiliser l'ensemble de ses fonctionnalités pour comparer des instantanés de performance :

  • Le nouveau concept de « comparaison en tant que filtre » facilite la comparaison d'échantillonnages, de traçages et d'instantanés ligne par ligne.
  • Vous pouvez maintenant filtrer les sous-systèmes dans l'échantillonnage, le traçage et les instantanés ligne par ligne.
  • dotTrace Viewer dispose désormais d'une vue Plain List. Elle est disponible pour l'échantillonnage, le traçage, les instantanés ligne par ligne et les instantanés de chronologie.

Meilleure prise en charge des appels système natifs 2022.2

dotTrace fournit maintenant davantage de détails sur les appels système natifs dans l'arborescence Timeline Call Tree, notamment les appels du noyau Windows (ntoskrnl.exe) et les appels de pilotes de périphériques (*.sys).

Améliorations de dotTrace dans JetBrains Rider 2022.2

Il n'est plus nécessaire de redémarrer l'éditeur Unity pour lancer le processus de profilage. Le profileur peut désormais s'attacher à des processus Unity en cours d'exécution, ou s'en détacher.

Prise en charge des distributions Linux basées sur musl 2022.1

L'outil de ligne de commande dotTrace et dotTrace dans Rider prennent désormais en charge versions 3.13 à 3.15 d'Alpine. Les processeurs et frameworks suivants sont pris en charge :

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

Meilleure prise en charge des événements SQL Server 2022.1

Il est maintenant possible d'ouvrir les fichiers NetTrace collectés avec dotnet-trace collect : dans le menu dotTrace Home, cliquez sur Open Snapshot et choisissez un fichier .nettrace.

Meilleure prise en charge des événements SQL Server 2022.1

dotTrace prend désormais en charge les événements SQL Server depuis le fournisseur Microsoft.Data.SqlClient sous Windows (.NET Core, .NET 5+), ainsi que sous macOS et Linux (.NET Core 3.0+, .NET 5+).

Navigation au clavier dans la fenêtre Home de dotTrace 2022.1

Vous pouvez accéder à tous les éléments de la fenêtre Home de dotTrace et les parcourir en utilisant seulement le clavier. L'utilisation de la souris n'est pas nécessaire. Chaque élément de l'interface utilisateur est associé à une touche ou à une séquence de touches. Il y a deux façons de visualiser les touches attribuées et d'interagir avec les éléments de l'interface utilisateur :

  • Maintenir la touche Alt et appuyer sur une touche ou une séquence de touches (par défaut).
  • Appuyer sur la touche de changement de mode, puis appuyer sur une touche ou une séquence de touches.

Vous pouvez choisir laquelle utiliser dans dotTrace Home | Settings.

Attachement aux applications par glisser-déposer 2022.1

Il est désormais possible d'attacher le profileur à une application en cours d'exécution en faisant simplement glisser l'icône spéciale sur la fenêtre d'application.

Page Snapshots améliorée dans la fenêtre Home de dotTrace 2022.1

  • Il est désormais possible de modifier les noms des instantanés.
  • Vous pouvez ouvrir des instantanés en faisant glisser les fichiers correspondants sur la fenêtre Home de dotTrace.
  • L'ordre de la liste des instantanés est conservé lors du redémarrage de dotTrace.
  • La liste des instantanés utilise maintenant le format de dates du système.

Autres améliorations 2022.1

  • Il est désormais possible de désactiver l'enregistrement automatique des instantanés. Si vous le faites, dotTrace vous demandera si vous souhaitez enregistrer les instantanés collectés lorsque vous fermerez Timeline ou Performance Viewer.
  • Vous pouvez désormais épingler des threads dans le filtre Threads de Timeline Viewer.
  • L'outil Configuration2Xml utilise maintenant la même interface utilisateur que la fenêtre Home de dotTrace.

Prise en charge des processeurs Apple Silicon 2021.3

L'outil de ligne de commande dotTrace fonctionne désormais sur les ordinateurs équipés de processeurs Apple Silicon. Vous pouvez l'utiliser pour profiler les applications .NET 6 (mode natif) et .NET 5 (mode Rosetta 2).

Améliorations des performances 2021.3

  • Nous avons optimisé la consommation de ressources du profilage en mode Timeline pour les applications qui utilisent des appels asynchrones de façon intensive.
  • Nous avons amélioré les performances d'ouverture et de filtrage dans les instantanés Timeline.

Enregistrement de l'état de l'interface pour les instantanés Timeline2021.3

Lorsque vous fermez un instantané Timeline, dotTrace enregistre l'état de l'interface utilisateur, y compris les intervalles de temps sélectionnés, les filtres appliqués, etc. Lorsque vous ouvrez à nouveau l'instantané, dotTrace restaure l'état de l'interface.

Prise en charge des événements TPL sous macOS et Linux 2021.3

L'outil de ligne de commande dotTrace, comme dotTrace dans Rider, vous permet désormais de collecter des données sur les appels asynchrones sous macOS et Linux. Pour obtenir ces données, utilisez le mode profilage Timeline. L'arborescence des appels Call Tree affiche les appels asynchrones, y compris les paramètres await et continuation.

Prise en charge améliorée des processus enfants sous macOS et Linux2021.3

L'outil de ligne de commande dotTrace et dotTrace dans Rider peuvent désormais profiler les processus enfants des applications sous macOS et Linux dans le mode de profilage Timeline. Cette prise en charge est disponible uniquement pour les applications .NET 5+.

Profilage natif 2021.2

Il est désormais possible de profiler des applications Windows natives. Lorsque vous démarrez une session de profilage, vous pouvez télécharger des fichiers de symboles source natifs à partir de serveurs distants. Le profilage natif est uniquement disponible pour le profilage de type chronologique (Timeline).

Profilage chronologique sur macOS et Linux 2021.2

Vous pouvez désormais profiler les applications .NET Core et .NET sur macOS et Linux en utilisant le profilage de type chronologique.

Nouvel écran d'accueil 2021.1

Nous avons complètement retravaillé l'écran d'accueil de dotTrace. Ces modifications facilitent notamment la configuration et le lancement de nouvelles sessions de profilage, ainsi que le travail avec des instantanés.

Le profileur en ligne de commande comme outil .NET standard

Le profileur en ligne de commande comme outil .NET 2021.1 standard

Vous pouvez installer et utiliser le profileur en ligne de commande comme outil dotnet standard : dotnet tool install --global JetBrains.dotTrace.GlobalTools --version 2021.1.0

Télécharger dotTrace

Essai gratuit sur 30 jours disponible