Поделиться через


Отслеживание приложений Spring Boot в Dynatrace Java OneAgent

Примечание.

Планы Basic, Standardи Enterprise вступили в период вывода из обращения 17 марта 2025 года. Дополнительные сведения см. в объявлении о выходе на пенсию в Azure Spring Apps.

Эта статья относится к:✅ Basic/Standard ❎️ Enterprise

В этой статье показано, как использовать Dynatrace OneAgent для отслеживания приложений Spring Boot в Azure Spring Apps.

С помощью Dynatrace OneAgent можно:

  • Отслеживать приложения с помощью Dynatrace OneAgent.
  • Настраивать Dynatrace OneAgent с помощью переменных среды.
  • Проверять все данные отслеживания с панели мониторинга Dynatrace.

В следующем видео рассматривается Dynatrace OneAgent.


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

Активация Dynatrace OneAgent

В следующих разделах описана активация Dynatrace OneAgent.

Настройте среду Azure Spring Apps

  1. Создайте экземпляр Azure Spring Apps.
  2. Создайте приложение, о котором необходимо сообщить в Dynatrace, выполнив следующую команду. Замените значения заполнителей <...> на собственные.
    az spring app create \
        --resource-group <your-resource-group-name> \
        --service <your-Azure-Spring-Apps-name> \
        --name <your-application-name> \
        --is-public true
    

Определение значений для требуемых переменных среды

Чтобы активировать Dynatrace OneAgent в экземпляре Azure Spring Apps, необходимо настроить четыре переменные среды: DT_TENANT, DT_TENANTTOKEN, DT_CONNECTION_POINT и DT_CLUSTER_ID. Дополнительные сведения см. в статье Интеграция OneAgent с Azure Spring Apps.

Для приложений с несколькими экземплярами Dynatrace имеет несколько способов их группировки. Одним из способов является DT_CLUSTER_ID. Дополнительные сведения см. в статье Обнаружение группы процессов.

Добавление переменных среды в свое приложение

Вы можете добавить в приложение пары "ключ — значение" переменной среды, используя либо портал Azure, либо Azure CLI.

Вариант 1. Azure CLI

Чтобы добавить пары "ключ — значение" с помощью Azure CLI, выполните следующую команду, заменив заполнители <...> значениями, определенными на предыдущих шагах.

az spring app deploy \
    --resource-group <your-resource-group-name> \
    --service <your-Azure-Spring-Apps-name> \
    --name <your-application-name> \
    --artifact-path app.jar \
    --env \
        DT_TENANT=<your-environment-ID> \
        DT_TENANTTOKEN=<your-tenant-token> \
        DT_CONNECTION_POINT=<your-communication-endpoint>

Вариант 2: портал Azure

Чтобы добавить пары "ключ — значение" с помощью портала Azure, выполните следующие действия.

  1. В экземпляре Azure Spring Apps выберите "Приложения " в области навигации.

    Снимок экрана: портал Azure с страницей

  2. Выберите приложение из списка и выберите "Конфигурация " в области навигации.

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

    Снимок экрана: портал Azure со страницей конфигурации приложения с выбранной вкладкой переменных среды.

Автоматизация предоставления

С помощью шаблона Terraform, Bicep или Шаблона Azure Resource Manager (шаблон ARM) можно также запустить конвейер автоматизации подготовки. Этот конвейер может предоставить полный практический опыт для инструментирования и отслеживания новых создаваемых и развертываемых приложений.

Автоматизация предоставления ресурсов с помощью Terraform

Чтобы настроить переменные среды в шаблоне Terraform, добавьте в шаблон следующий код, заменив заполнители <...> собственными значениями. Дополнительные сведения см.на странице Manages an Active Azure Spring Apps Deployment (Управление развертыванием Active Azure Spring Apps).

environment_variables = {
  "DT_TENANT": "<your-environment-ID>",
  "DT_TENANTTOKEN": "<your-tenant-token>",
  "DT_CONNECTION_POINT": "<your-communication-endpoint>",
  "DT_CLUSTER_ID": "<your-cluster-ID>"
}

Автоматизация развертывания с помощью файла Bicep

Чтобы настроить переменные среды в файле Bicep, добавьте следующий код в файл, заменив <...> заполнители собственными значениями. Дополнительные сведения см. в разделе Microsoft.AppPlatform Spring/apps/deployments.

environmentVariables: {
  DT_TENANT: '<your-environment-ID>'
  DT_TENANTTOKEN: '<your-tenant-token>'
  DT_CONNECTION_POINT: '<your-communication-endpoint>'
  DT_CLUSTER_ID: '<your-cluster-ID>'
}

Автоматизация подготовки с помощью шаблона ARM

Чтобы настроить переменные среды в шаблоне ARM, добавьте в шаблон следующий код, заменив заполнители <...> собственными значениями. Дополнительные сведения см. в разделе Microsoft.AppPlatform Spring/apps/deployments.

"environmentVariables": {
  "DT_TENANT": "<your-environment-ID>",
  "DT_TENANTTOKEN": "<your-tenant-token>",
  "DT_CONNECTION_POINT": "<your-communication-endpoint>",
  "DT_CLUSTER_ID": "<your-cluster-ID>"
}

Просмотр отчетов в Dynatrace

В этом разделе описано, как найти различные отчеты в Dynatrace.

Примечание.

Меню Dynatrace и пользовательский интерфейс будут постепенно развиваться. По этой причине панель мониторинга может быть перемещена в другие разделы веб-сайта Dynatrace, а следующие снимки экрана могут не отражать текущую версию пользовательского интерфейса.

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

Поток службы находится в разделе <имя_приложения>/Сведения/Поток службы:

Снимок экрана: отчет потока службы Dynatrace.

Гиперобъекты метода находятся в разделе <имя_приложения>/Сведения/Гиперобъекты метода:

Снимок экрана: отчет о горячих точках доступа метода Dynatrace.

Инструкции базы данных находятся в разделе <имя_приложения>/Анализ времени/Сведения/Анализ времени отклика:

Снимок экрана отчета по анализу времени отклика Dynatrace и раздела

Далее перейдите в раздел Многомерный анализ.

Основные инструкции базы данных можно найти в разделе Многомерный анализ/Основные инструкции базы данных:

Снимок экрана: отчет о инструкциях базы данных Dynatrace Top.

Обзор исключений можно найти в разделе Многомерный анализ/Обзор исключений:

Снимок экрана отчета об обзоре исключений Dynatrace.

Далее перейдите в раздел Профилирование и оптимизация.

Анализ ЦП можно найти в разделе Профилирование и оптимизация/Анализ ЦП:

Снимок экрана: отчет об анализе ЦП Dynatrace.

Далее перейдите в раздел Базы данных.

Обратная трассировка можно найти в разделе Базы данных/Сведения/Обратная трассировка:

Снимок экрана: отчет Dynatrace Backtrace.

Просмотр журналов Dynatrace OneAgent

По умолчанию Azure Spring Apps выводит журналы уровня info Dynatrace OneAgent в STDOUT. Логи совмещены с логами приложений. Явную версию агента можно найти в журналах приложений.

Кроме того, журналы агента Dynatrace можно получить из следующих локаций:

  • логи Azure Spring Apps
  • Платформа Azure Spring Apps и служба Application Insights
  • Сервис LogStream в Azure Spring Apps.

Вы можете применить некоторые переменные среды, предоставляемые Dynatrace для настройки ведения журналов для Dynatrace OneAgent. Например, DT_LOGLEVELCON определяет уровень ведения журнала. Значение DT_LOGLEVELCON по умолчанию — info. Журналы агента можно отключить, установив для этого значение DT_LOGLEVELCONoff. Если ведение журнала отключено, поддержка Dynatrace просит сначала включить его, чтобы эффективно диагностировать любые проблемы агента. Затем необходимо перезапустить приложение, которое необходимо для того, чтобы изменения вступили в силу. Для других уровней журналов обратитесь в службу поддержки Dynatrace.

Внимание

Настоятельно рекомендуется не переопределить поведение ведения журнала по умолчанию, предоставленное Azure Spring Apps для Dynatrace. Если это сделать, описанные ранее сценарии ведения журнала блокируются, а файлы журнала могут быть потеряны. Например, вы не должны выводить DT_LOGLEVELFILE переменную среды в приложения.

Обновление Dynatrace OneAgent

Автоматическое обновление Dynatrace OneAgent отключено и обновляется ежеквартально с помощью JDK. Обновление агента может повлиять на следующие сценарии:

  • Существующие приложения, использующие Dynatrace OneAgent, не изменяются, но требуют перезапуска или повторного развертывания для привлечения новой версии Dynatrace OneAgent.
  • Приложения, созданные после обновления, используют новую версию Dynatrace OneAgent.

Конфигурация исходящего трафика экземпляра инъекции виртуальной сети

Для экземпляра Azure Spring Apps с внедренной виртуальной сетью необходимо убедиться, что исходящий трафик для точек подключения Dynatrace настроен правильно для Dynatrace OneAgent. Сведения о получении communicationEndpoints см. в статье API развертывания — ПОЛУЧЕНИЕ информации о подключении для OneAgent. Дополнительные сведения см. в статье о обязанностях клиентов по запуску Azure Spring Apps в виртуальной сети.

Модель поддержки Dynatrace

Сведения об ограничениях при развертывании Dynatrace OneAgent в режиме "только приложения" см. в разделе Платформы облачных приложений статьи Платформа OneAgent и матрица поддержки возможностей.

Следующие шаги

Использование внутрипроцессного агента Java Application Insights в Azure Spring Apps