Статья

Как исправлять ошибки в продуктовой среде без риска с помощью Live Debugger

  • Illustration

    Автор: Руслан Сарафанюк, Sales Engineer, BAKOTECH

Illustration

В современном мире разработки программного обеспечения эффективность команды имеет решающее значение. По данным "State of DevOps Report", только около 40% времени разработчиков является действительно продуктивным, а 36% специалистов покидают компании из-за невозможности доступа к данным на уровне кода. Это проблема, с которой сталкивается большинство разработчиков при устранении неисправностей и отладке программ. Им приходится проходить длительные циклы развертывания и анализа журналов, чтобы найти соответствующие данные, необходимые для понимания того, что происходит в их запущенном коде.

Чтобы избежать этого, важно предоставить разработчикам решение, предлагающее мгновенный доступ к необходимым им данным, независимо от среды.
Dynatrace стремится изменить эту ситуацию. Live Debugger позволяет сократить время поиска и исправления ошибок в продуктовой среде до 80%. Это оказывает положительное влияние на рабочий процесс: снижает уровень стресса, повышает удовлетворение и улучшает стабильность продукта.

Dynatrace Live Debugger: что это такое?

Dynatrace Live Debugger — это инновационная возможность, позволяющая разработчикам легко находить ошибки в коде без необходимости изменять логику работы приложения или добавлять временные логирования.

Раньше исправление ошибок в продуктовой среде требовало создания тестовой среды или рискованного вмешательства в работающую систему. Теперь все гораздо проще:

    Никакой потребности в дополнительном логировании.  
    Не нужно создавать отдельные debug-сборники.  
    Приложение работает без перезагрузок и остановок.  

Live Debugger дает возможность устанавливать неразрывные точки в реальном времени и собирать мгновенные снимки состояния переменных и выполнения программы. И все это — без ущерба для производительности системы.

Эта технология идеально подходит для обнаружения «плавающих» ошибок, которые трудно или почти невозможно воспроизвести в тестовой среде.

Illustration

Давайте рассмотрим, как Live Debugger помогает разработчикам быстрее и качественнее исправлять даже самые сложные ошибки без ущерба для производительности или стабильности систем на примере классического подхода и предложенного Dynatrace.

Illustration

Как работает Live Debugger?  

Чтобы использовать Live Debugger, необходимо выполнить несколько простых шагов:

1

Выбрать процесс или сервис, который необходимо проанализировать. Это может быть Kubernetes-контейнер, конкретный хост или IP-адрес.

2

Подключить исходный код. Dynatrace никогда не копирует и не передает исходный код на внешние серверы.
➔Весь код остается внутри вашей сети
, за вашим файрволом, и доступ к репозиториям происходит локально с рабочей станции разработчика. Это означает, что весь процесс анализа выполняется в браузере или IDE без утечки данных куда-то наружу.

3

Установить неразрывные точки в нужном месте кода. Их можно ставить через Dynatrace UI или непосредственно из вашего любимого IDE (например, VS Code или IntelliJ) с помощью специального плагина.

4

Получать мгновенные снимки состояния переменных, стека вызовов и окружения всякий раз, когда выполнение кода доходит до брейкпойнта.

5

Проанализировать собранные данные, выявить причину проблемы и внести исправления.

Опыт работы с Live Debugger очень похож на традиционный процесс устранения ошибок в локальной IDE: вы видите дерево исходных файлов, открываете нужный код, ставите точки и мгновенно получаете снимки данных, но без остановок или перезапуска приложения.

Интеграция Live Debugger с любимыми IDE

Чтобы сделать работу еще более комфортной, Dynatrace предлагает плагины для популярных сред разработки, в частности:
● Visual Studio Code — расширение "Observability for Developers". ● JetBrains IDE — интеграция с IntelliJ IDEA, PyCharm, WebStorm и другими.
Через плагин вы можете:
● Просматривать дерево исходных кодов прямо в IDE. ● Устанавливать неразрывные точки в один клик. ● Получать мгновенные снимки выполнения непосредственно в своей среде разработки.
Таким образом, процесс Live Debugging выглядит так же знакомо и естественно, как обычный локальный анализ — только теперь он доступен в живой продуктовой среде.

Illustration

Снимок экрана в Visual Studio Code IDE

Illustration

Снимок экрана в IntelliJ IDE

Итог

Dynatrace Live Debugger открывает новую эпоху в отладке приложений:
● Вы получаете всю необходимую информацию об ошибках без вмешательства в продуктовую среду. ● Вы сокращаете время поиска и устранения проблем на 80%. ● Вы повышаете удовлетворение и эффективность работы разработчиков.
Хотите узнать о решении больше? Напишите нам на moc.hcetokab%40ecartanyd— поможем внедрить и использовать Live Debugger на полную.

Чтобы получить дополнительную информацию о платформе Dynatrace, заполните, пожалуйста, форму: