На этой странице рассказывается о свежих обновлениях и изменениях в dotTrace.
Доступна бесплатная пробная версия на 30 дней
Мы добавили в автономную версию dotTrace полную поддержку действий Undo и Redo и истории фильтрации. Теперь каждое изменение фильтра регистрируется, и пользователю проще вернуться к одному из предыдущих состояний. Чтобы отменить последнее изменение, воспользуйтесь кнопкой Undo или сочетанием клавиш, чтобы повторить действие — кнопкой Redo. Кроме того, можно открыть раскрывающийся список, чтобы отменить сразу несколько шагов. Изменения в списке перечислены в хронологическом порядке.
Мы улучшили производительность всех версий dotTrace, в том числе ускорили обработку снэпшотов Timeline и данных в представлениях Call Tree и Hotspots.
В новой версии можно профилировать приложения на основе фреймворка MAUI.
В настоящее время dotTrace поддерживает:
Это касается и автономного dotTrace, и встроенного dotTrace в Rider и ReSharper.
В dotTrace появились предустановки пользовательского интерфейса. Они позволяют отобразить в интерфейсе только те настройки профилирования, которые актуальны для конкретного приложения: General (все типы приложений), Unity developer и Unreal Engine developer.
Мы улучшили профилирование на macOS:
.app
) вместо исполняемых файлов. net7.0-macos
, net8.0-macos
, net7.0-maccatalyst
, net8.0-maccatalyst
, Xamarin.Mac
. Теперь при настройке сеанса профилирования Timeline можно настроить следующие параметры:
Теперь вы можете не анализировать дерево вызовов Call Tree, а просматривать данные профилирования производительности прямо в исходном коде. Представление Source показывает информацию о распределении времени по отдельным строкам кода. В настоящее время функция доступна только для снэпшотов Timeline, созданных в Windows.
System.Data.SqlClient
из фреймворков .NET и .NET Core. Соответствующие события можно посмотреть с помощью фильтра запросов SQL. Теперь в представлении Call Tree можно сгруппировать стеки вызовов по потокам, чтобы было удобнее анализировать проблемы с производительностью, характерные для конкретных потоков.
В автономной версии dotTrace для Linux и macOS появилось окно Source View. Если выбран вызов в Call Tree, в окне Source View будет показан исходный код соответствующего метода.
Теперь для Linux и macOS доступна автономная версия dotTrace. Благодаря этому в этих операционных системах можно выполнять полное профилирование, включая сбор и анализ снэпшотов производительности.
Теперь dotTrace можно использовать в Windows на процессорах ARM64. Это относится ко всем версиям dotTrace: и к автономной, и к инструменту, запускаемому в Rider, Visual Studio и из консоли.
Теперь можно использовать консольную версию dotTrace в Linux на процессорах ARM32. Поддерживаемые фреймворки — .NET Core 3.1 и .NET 5.0–7.0. Обратите внимание, что хронологический режим профилирования поддерживается только для приложений .NET 6.0.
Раньше снэпшоты сэмплинг-анализа, анализа трассировки и построчного анализа производительности приходилось открывать в устаревшем Performance Viewer, в то время как хронологические снэпшоты открывались в более современном Timeline Viewer. Это было неудобно, поскольку у этих средств просмотра разные интерфейсы и подходы к анализу снэпшотов.
Мы решили отказаться от Performance Viewer в пользу dotTrace Viewer (бывшего Timeline Viewer). В нем будут открываться снэпшоты любого типа. Вы можете и дальше пользоваться Performance Viewer, но нам хотелось бы узнать, почему вы его предпочитаете. Мы всегда рады вашим отзывам!
Поскольку Viewer теперь поддерживает все типы снэпшотов, вы можете использовать его мощные возможности для их сравнения:
dotTrace теперь предоставляет более подробную информацию о нативных системных вызовах в Timeline Call Tree, включая вызовы ядра Windows (ntoskrnl.exe
), вызовы драйверов устройств (*.sys
) и многие другие.
Для запуска профилирования больше не нужно перезапускать редактор Unity. Теперь профилировщик может сам подключаться к запущенным процессам Unity и отключаться от них.
dotTrace в Rider и консольный инструмент dotTrace теперь поддерживают Alpine версий 3.13–3.15. Поддерживаются следующие процессоры и фреймворки:
Теперь вы можете открывать файлы NetTrace, собранные с помощью dotnet-trace collect:
, из меню Home: для этого нажмите Open Snapshot и выберите файл .nettrace.
Теперь dotTrace поддерживает события SQL Server провайдера Microsoft.Data.SqlClient
на Windows (.NET Core, .NET 5+), а также на macOS и Linux (.NET Core 3.0+, .NET 5+).
Теперь по окну Home можно перемещаться с помощью сочетаний клавиш, не используя мышь. Каждому элементу интерфейса назначена клавиша или комбинация клавиш. Чтобы просмотреть назначенные клавиши и взаимодействовать с элементами интерфейса:
Предпочтительный способ можно выбрать в меню Home | Settings.
Теперь, чтобы подключить профилировщик к запущенному приложению, достаточно перетащить в окно приложения специальную иконку.
Консольный инструмент dotTrace теперь работает на компьютерах с процессорами Apple Silicon. Вы можете использовать его для профилирования приложений .NET 6 (нативный режим) и приложений .NET 5 (режим «Rosetta 2»).
Когда вы закрываете снэпшот хронологического профилирования, dotTrace сохраняет состояние интерфейса, включая выбранные временные интервалы, фильтры и т. д. При следующем открытии снэпшота dotTrace восстановит прежнее состояние интерфейса.
Консольный инструмент dotTrace, как и dotTrace в Rider, теперь позволяют собирать данные об асинхронных вызовах на macOS и Linux. Эти данные доступны в режиме профилирования Timeline. В дереве вызовов отображаются асинхронные вызовы, включая await и continuation.
Консольный инструмент dotTrace и dotTrace в Rider теперь умеют профилировать дочерние процессы приложений на macOS и Linux в режиме профилирования Timeline. Эта возможность поддерживается только для приложений .NET 5+.
Мы добавили возможность профилирования нативных приложений для Windows. Запуская сеанс профилирования, вы теперь можете загрузить нативные файлы символов с удаленных серверов. Профилирование нативных приложений доступно только в режиме профилирования Timeline.
Режим профилирования Timeline теперь доступен для приложений .NET Core и .NET на macOS и Linux.
Мы полностью обновили начальный экран dotTrace. Теперь вам будет намного проще конфигурировать и запускать новые сеансы профилирования, работать со снэпшотами и выполнять другие базовые операции.
Вы можете установить и использовать консольный профилировщик dotTrace в качестве глобального dotnet-инструмента: dotnet tool install --global JetBrains.dotTrace.GlobalTools --version 2021.1.0
Доступна бесплатная пробная версия на 30 дней