Мониторинг Red Hat Quarkus
Мониторинг Red Hat Quarkus
Red Hat Quarkus — это платформа Java с открытым исходным кодом, оптимизированная для GraalVM, чтобы сделать Java ценным гражданином в мире микросервисов. Quarkus принадлежит к семейству полнофункциональных фреймворков, специально разработанных для Kubernetes. Он включает в себя современные библиотеки Java и соответствует последним стандартам Java.
GraalVM предназначен для достижения высокой производительности при выполнении приложений, написанных на Java и других языках JVM. Он предлагает два подхода для компиляции кода Java в исполняемый файл:
- компиляция точно в срок (JIT)
- предварительная компиляция (AOT) в собственный образ
Нативные образы, скомпилированные с помощью AOT, включают только код Java, необходимый во время выполнения, исключая все остальное из библиотек и фреймворков.
Узнайте, как Dynatrace может отслеживать метрики и журналы из приложения Quarkus, скомпилированного в виде собственного образа.
Предварительные требования
- Ваша версия GraalVM поддерживается Dynatrace.
- GraalVM настроен на создание собственных образов. Дополнительные сведения см. в руководстве по созданию собственного исполняемого файла Quarkus.
- OneAgent или Dynatrace Operator установлены на машине, на которой должно выполняться приложение.
Необходимая установка зависит от вашего приложения:
Если ваше приложение работает См. инструкцию для | See the instruction for |
---|---|
на виртуальной машине или на «голом железе» | OneAgent |
как рабочая нагрузка в Kubernetes или OpenShift | Dynatrace Operator |
Трассировки
Dynatrace может автоматически отслеживать JIT-компилированные приложения Quarkus, выполняемые на OpenJDK HotSpot JVM и GraalVM.
Трассировка собственных приложений Quarkus, скомпилированных с помощью AOT, в настоящее время не поддерживается.
Метрики
Red Hat рекомендует получать метрики от Quarkus через библиотеку quarkus-micrometer-resistry-prometheus
.
Чтобы узнать, как использовать метрики Micrometer в приложении Quarkus, см. руководство Quarkus по метрикам Micrometer.
Dynatrace предлагает два подхода для получения метрик Micrometer от Prometheus: через API или через расширение.
Получение метрик Micrometer через Dynatrace API
Используйте Dynatrace API для получения метрик, полученных из библиотеки quarkus-micrometer-resistry-prometheus.
Дополнительные сведения о процедуре загрузки см. в разделе Отправка метрик Micrometer в Dynatrace.
Для собственных приложений обязательно следуйте подходу «Непосредственно в Micrometer».
Получение метрик Micrometer через расширение
Используйте Dynatrace Extension 2.0 Framework для приема метрик Micrometer, полученных из источника данных Prometheus — для этого вам нужно создать собственное расширение.
В качестве отправной точки вы можете использовать приведенный ниже пример пользовательского расширения. Он адаптирован для библиотеки quarkus-micrometer-resistry-prometheus
. Обязательно используйте правильную конечную точку метрик в своей конфигурации. Конечная точка по умолчанию — localhost:8080/q/metrics
.
Журналы
Dynatrace предлагает различные варианты сбора журналов из ваших приложений и сред.
Чтобы узнать, как настроить ведение журнала в приложении Quarkus, см. руководство Quarkus по настройке ведения журнала.
В приведенной ниже процедуре предполагается, что ваше приложение записывает журналы в файл /var/log/quarkus-app.log
.
- Запустите собственное приложение Quarkus.
- В меню Dynatrace перейдите в раздел «Хосты» и выберите свой хост.
- Прокрутите вниз до раздела «Анализ процессов» и в списке процессов выберите процесс собственного приложения Quarkus.
- В правой части панели «Процесс» выберите «Дополнительно» > «Настройки».
- В настройках группы процессов выберите Мониторинг журнала > Добавить новый журнал для мониторинга.
- Введите полный путь к файлу журнала. Обязательно соблюдайте требования к пути журнала.
- Выберите Сохранить изменения.
- Включите добавленные файлы журналов в хранилище журналов.