Полная видимость на уровне кода

Материал из Документация Ключ-АСТРОМ
Версия от 04:09, 6 декабря 2021; IKolomin (обсуждение | вклад) (Новая страница: «Приложения Go компилируются непосредственно в машинный код ЦП. В Go отсутствует уровень а...»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)

Приложения Go компилируются непосредственно в машинный код ЦП. В Go отсутствует уровень абстрагирования виртуальной машины с определенными хуками мониторинга, такими как Java JVM или .NET CLR. Таким образом, Ключ-Астром ЕдиныйАгент работает на уровне инструкций ЦП для перехвата вызовов функций Go. Возможности параллельной обработки Go уникальны, и ЕдиныйАгент оптимизирован для исключения точек неявной синхронизации между Goroutines при захвате данных мониторинга.

Страницы обзора процессов и услуг, а также представления горячих точек и PurePaths предоставляют ценную информацию о деталях обработки ваших приложений Golang и могут помочь вовремя выявить критические проблемы. Профилировщик ЦП позволяет исследовать код, который выполняется вне контекста веб-запроса, например фоновые действия и планировщики.

Ключ-Астром ЕдиныйАгент может отличить код приложения, выполняемый в контексте PurePath (например, входящий веб-запрос), от кода, выполняемого в фоновом режиме. ЦП фонового потока и ЦП запросов на обслуживание отслеживаются отдельно. Например, посмотрите на снимок экрана ниже - пакет Go net / http порождает новую горутину для каждого входящего веб-запроса или соединения. Вот почему Goroutine, выполняющий функцию обработчика веб-запросов, помечен как служебный. Другие горутины, запущенные до обработки веб-запроса, также считаются частью выполнения службы и, следовательно, также помечаются. С другой стороны, обработка, выполняемая горутинами, у которых нет тега, связанного с сервисом, считается фоновой деятельностью.