Rate this post

Оптимизация кода в Application Insights — это мощный инструмент, который помогает разработчикам улучшать производительность приложений на .NET. Он анализирует поведение приложения, выявляет узкие места и предоставляет практические рекомендации на уровне кода для устранения проблем с производительностью.

Принцип работы

Инструмент интегрируется с профайлером .NET в Application Insights, автоматически обрабатывая данные трассировки, собранные во время выполнения приложения.

Основные возможности:

  • Непрерывный анализ: Постоянно отслеживает трассы профайлера для выявления неэффективности кода.

  • Выявление узких мест: Определяет участки, где чрезмерно используется процессор или память.

  • Практические рекомендации: Предоставляет конкретные советы по изменению кода, доступные напрямую в портале Azure.

Визуализация Оптимизации кода в разделе Performance показывает разработчикам, какие изменения принесут наибольшую пользу.

Бесшовная интеграция в рабочие процессы разработки

Оптимизация кода создана так, чтобы органично вписываться в существующие процессы разработки:

  • Интеграция с системами управления задачами: Рекомендации можно экспортировать в виде рабочих элементов в Azure DevOps или другие инструменты управления проектами.

  • Поддержка GitHub Copilot: Предложения появляются прямо в Visual Studio и Visual Studio Code через GitHub Copilot, что позволяет разработчикам быстро применять исправления.

  • Автоматическое назначение задач: GitHub Issues, созданные на основе рекомендаций, можно назначать агенту Copilot для автоматизации процесса оптимизации.

Последние улучшения

  • Анализ блокирующих операций: Инструмент теперь может выявлять синхронные операции, блокирующие потоки в асинхронных рабочих процессах. Ранее анализировались только активно выполняющиеся потоки.

  • Прямое назначение задач Copilot: GitHub Issues теперь можно назначать агенту Copilot прямо с страницы Оптимизации кода или вкладки Snapshot Debugger.

  • Поддержка OpenTelemetry (Preview): Добавлена предварительная поддержка профайлера .NET для OpenTelemetry, что позволяет собирать данные о производительности приложений без интеграции дополнительных SDK.

Активация Оптимизации кода

Чтобы начать использовать Оптимизацию кода, необходимо включить профайлер .NET для вашего приложения в настройках Application Insights. Для новых приложений эта опция доступна при первоначальной настройке мониторинга.