В современном мире разработки программного обеспечения эффективность команды имеет решающее значение. По данным «State of DevOps Report», только около 40% времени разработчиков является действительно продуктивным, а 36% специалистов покидают компании из-за невозможности доступа к данным на уровне кода. Это проблема, с которой сталкивается большинство разработчиков при устранении неисправностей и отладке программ. Им приходится проходить длительные циклы развертывания и анализа журналов, чтобы найти соответствующие данные, необходимые для понимания того, что происходит в их запущенном коде.
Чтобы избежать этого, важно предоставить разработчикам решение, предлагающее мгновенный доступ к необходимым им данным, независимо от среды.
Dynatrace стремится изменить эту ситуацию. Live Debugger позволяет сократить время поиска и исправления ошибок в продуктовой среде до 80%. Это оказывает положительное влияние на рабочий процесс: снижает уровень стресса, повышает удовлетворение и улучшает стабильность продукта.
Dynatrace Live Debugger: что это такое?
Dynatrace Live Debugger — это инновационная возможность, позволяющая разработчикам легко находить ошибки в коде без необходимости изменять логику работы приложения или добавлять временные логирования.
Раньше исправление ошибок в продуктовой среде требовало создания тестовой среды или рискованного вмешательства в работающую систему. Теперь все гораздо проще:
- Никакой потребности в дополнительном логировании.
- Не нужно создавать отдельные debug-сборники.
- Приложение работает без перезагрузок и остановок.
Live Debugger дает возможность устанавливать неразрывные точки в реальном времени и собирать мгновенные снимки состояния переменных и выполнения программы. И все это — без ущерба для производительности системы.
Эта технология идеально подходит для обнаружения «плавающих» ошибок, которые трудно или почти невозможно воспроизвести в тестовой среде.
Давайте рассмотрим, как Live Debugger помогает разработчикам быстрее и качественнее исправлять даже самые сложные ошибки без ущерба для производительности или стабильности систем на примере классического подхода и предложенного Dynatrace.
Как работает Live Debugger?
Чтобы использовать Live Debugger, необходимо выполнить несколько простых шагов:
- Выбрать процесс или сервис, который необходимо проанализировать. Это может быть Kubernetes-контейнер, конкретный хост или IP-адрес.
- Подключить исходный код. Dynatrace никогда не копирует и не передает исходный код на внешние серверы.
➔Весь код остается внутри вашей сети, за вашим файрволом, и доступ к репозиториям происходит локально с рабочей станции разработчика. Это означает, что весь процесс анализа выполняется в браузере или IDE без утечки данных куда-то наружу. - Установить неразрывные точки в нужном месте кода. Их можно ставить через Dynatrace UI или непосредственно из вашего любимого IDE (например, VS Code или IntelliJ) с помощью специального плагина.
- Получать мгновенные снимки состояния переменных, стека вызовов и окружения всякий раз, когда выполнение кода доходит до брейкпойнта.
- Проанализировать собранные данные, выявить причину проблемы и внести исправления.
Опыт работы с Live Debugger очень похож на традиционный процесс устранения ошибок в локальной IDE: вы видите дерево исходных файлов, открываете нужный код, ставите точки и мгновенно получаете снимки данных, но без остановок или перезапуска приложения.
Интеграция Live Debugger с любимыми IDE
Чтобы сделать работу еще более комфортной, Dynatrace предлагает плагины для популярных сред разработки, в частности:
- Visual Studio Code — расширение «Observability for Developers».
- JetBrains IDE — интеграция с IntelliJ IDEA, PyCharm, WebStorm и другими.
Через плагин вы можете:
- Просматривать дерево исходных кодов прямо в IDE.
- Устанавливать неразрывные точки в один клик.
- Получать мгновенные снимки выполнения непосредственно в своей среде разработки.


Итог
Dynatrace Live Debugger открывает новую эпоху в отладке приложений:
- Вы получаете всю необходимую информацию об ошибках без вмешательства в продуктовую среду.
- Вы сокращаете время поиска и устранения проблем на 80%.
- Вы повышаете удовлетворение и эффективность работы разработчиков.
Хотите узнать о решении больше? Напишите нам на dynatrace@bakotech.com — поможем внедрить и использовать Live Debugger на полную.