Краткое руководство. Мониторинг приложений Azure Spring Apps с помощью журналов, метрик и трассировки
Примечание.
Планы "Базовый", "Стандартный" и "Корпоративный" будут устарели начиная с середины марта 2025 г. с 3-летнего периода выхода на пенсию. Рекомендуется перейти в приложения контейнеров Azure. Дополнительные сведения см. в объявлении о выходе на пенсию в Azure Spring Apps.
Стандартный план потребления и выделенного плана будет устарел с 30 сентября 2024 г. с полным завершением работы после шести месяцев. Рекомендуется перейти в приложения контейнеров Azure. Дополнительные сведения см. в статье "Миграция потребления Azure Spring Apps Standard" и выделенного плана в приложения контейнеров Azure.
Эта статья относится к: ✔️ Basic/Standard ❌ Enterprise
Встроенные возможности мониторинга Azure Spring Apps позволяют легко выполнять отладку и мониторинг при возникновении сложных проблем. Azure Spring Apps интегрирует распределенную трассировку Steeltoe с Azure Application Insights. Эта интеграция предоставляет широкие возможности ведения журналов, анализа метрик и распределенной трассировки с помощью портала Azure.
В следующих процедурах объясняется, как использовать потоковую передачу журналов, анализ журналов, метрики и распределенную трассировку с примером приложения, развернутого в предыдущих руководствах.
Необходимые компоненты
Пройдите краткие руководства, приведенные в этой серии:
Журналы
Просмотреть журналы в Azure Spring Apps можно одним из таких двух способов: с помощью функции Потоковая передача журналов в режиме реального времени для каждого экземпляра приложения или Log Analytics для агрегированных журналов с расширенными возможностями запросов.
Потоковая передача журналов
Выполните следующие действия для потоковой передачи журналов в портал Azure:
Перейдите на страницу "Обзор " для экземпляра службы Azure Spring Apps и выберите "Приложения " в области навигации.
Найдите целевое приложение и выберите контекстное меню.
Во всплывающем контекстном меню выберите "Просмотреть поток журналов".
По умолчанию журналы начинают потоковую передачу для случайно выбранного экземпляра приложения. После этого вы можете выбрать свой вариант.
Для удобства существует множество точек входа для потоковых журналов. Их можно найти на следующих панелях:
- Область списка приложений
- Область списка развертывания
- Область списка экземпляров приложения
Служба Log Analytics
На портале Azure перейдите на страницу Служба | Общие сведения и выберите Журналы в разделе Мониторинг. Выберите Выполнить для одного из примеров запросов Azure Spring Apps.
Измените запрос, чтобы удалить предложения WHERE, которые ограничивают отображение предупреждений и журналов ошибок.
Выберите Выполнить. Отображаются журналы. Дополнительные сведения см. в статье Начало работы с запросами журнала в Azure Monitor.
Дополнительные сведения о языке запросов, который используется в Log Analytics, см. в статье Запросы журналов Azure Monitor. Чтобы запросить все журналы Log Analytics из централизованного клиента, ознакомьтесь со статьей Azure Data Explorer.
Метрики
На портале Azure перейдите на страницу служба | Общие сведения и выберите Метрики в разделе Мониторинг. Добавьте первую метрику, выбрав одну из метрик .NET в разделе "Производительность" (.NET) или "Запрос" (.NET) в раскрывающемся списке "Метрика" и "Среднее значение для агрегирования", чтобы просмотреть временную шкалу для этой метрики.
На панели инструментов нажмите Добавить фильтр и выберите
App=solar-system-weather
, чтобы увидеть загрузку ЦП только для приложения solar-system-weather.Закройте фильтр, созданный на предыдущем шаге, выберите "Применить разделение" и выберите "Приложение для значений ", чтобы просмотреть использование ЦП различными приложениями.
Распределенная трассировка
На портале Azure перейдите на страницу служба | Общие сведения и выберите Distributed tracing (Распределенная трассировка) в разделе Мониторинг. Затем перейдите на вкладку View application map (Просмотр схемы приложения) справа.
Теперь вы можете видеть состояние вызовов между приложениями.
Выберите ссылку между солнечной системой-погодой и планетой-погодным поставщиком , чтобы просмотреть дополнительные сведения, такие как самые медленные вызовы методами HTTP.
Наконец, выберите Анализ работы, чтобы воспользоваться расширенными возможностями встроенных средств анализа производительности.
Встроенные возможности мониторинга Azure Spring Apps позволяют легко выполнять отладку и мониторинг при возникновении сложных проблем. Azure Spring Apps интегрирует Spring Cloud Sleuth с Azure Application Insights. Эта интеграция предоставляет широкие возможности ведения журналов, анализа метрик и распределенной трассировки с помощью портала Azure. В следующих процедурах объясняется, как использовать потоковую передачу журналов, анализ журналов, метрики и распределенную трассировку с развернутыми приложениями PetClinic.
Необходимые компоненты
Пройдите краткие руководства, приведенные в этой серии:
Журналы
Просмотреть журналы в Azure Spring Apps можно одним из таких двух способов: с помощью функции Потоковая передача журналов в режиме реального времени для каждого экземпляра приложения или Log Analytics для агрегированных журналов с расширенными возможностями запросов.
Потоковая передача журналов
Выполните следующие действия для потоковой передачи журналов в портал Azure:
Перейдите на страницу "Обзор " для экземпляра службы Azure Spring Apps и выберите "Приложения " в области навигации.
Найдите целевое приложение и выберите контекстное меню.
Во всплывающем контекстном меню выберите "Просмотреть поток журналов".
По умолчанию журналы начинают потоковую передачу для случайно выбранного экземпляра приложения. После этого вы можете выбрать свой вариант.
Для удобства существует множество точек входа для потоковых журналов. Их можно найти на следующих панелях:
- Область списка приложений
- Область списка развертывания
- Область списка экземпляров приложения
Служба Log Analytics
Перейдите на страницу служба | Общие сведения и выберите Журналы в разделе Мониторинг. Выберите Выполнить для одного из примеров запросов Azure Spring Apps.
Затем отображаются отфильтрованные журналы. Дополнительные сведения см. в статье Начало работы с запросами журнала в Azure Monitor.
Метрики
Перейдите на страницу Application Insights и перейдите на страницу метрик . Вы можете просмотреть метрики, внесенные приложениями Spring Boot, модулями Spring и зависимостями.
На следующей диаграмме показаны gateway_requests
(Spring Cloud Gateway), hikaricp_connections
(подключения JDBC) и http_client_requests
.
Spring Boot регистрирует несколько основных метрик, включая JVM, ЦП, Tomcat и Logback. Автоматическая настройка Spring Boot позволяет инструментирование запросов, обрабатываемых Spring MVC. Все три контроллера REST (OwnerResource
, PetResource
и VisitResource
) инструментируются @Timed
заметкой Micrometer на уровне класса.
Приложение customers-service
включает следующие пользовательские метрики:
- @Timed:
petclinic.owner
- @Timed:
petclinic.pet
Приложение visits-service
включает следующие пользовательские метрики:
- @Timed:
petclinic.visit
Эти настраиваемые метрики можно увидеть на странице метрик :
Вы можете использовать функцию тестирования доступности в Application Insights и отслеживать доступность приложений:
Перейдите на страницу динамических метрик, чтобы просмотреть динамические метрики с низкой задержкой (менее одной секунды):
Трассировка
Откройте Application Insights, созданный с помощью Azure Spring Apps, и запустите мониторинг приложений Spring.
Перейдите на страницу карты приложений:
Перейдите на страницу производительности :
Перейдите на вкладку Зависимостей , где можно увидеть номер производительности для зависимостей, в частности вызовы SQL:
Выберите вызов SQL, чтобы просмотреть сквозную транзакцию в контексте:
Перейдите на страницу "Сбои" и вкладку "Исключения", где можно просмотреть коллекцию исключений:
Выберите исключение, чтобы просмотреть сквозную транзакцию и стекtrace в контексте:
Очистка ресурсов
Если вы планируете продолжить работу с последующими краткими руководствами и статьями, эти ресурсы можно не удалять. Удалите ненужную группу ресурсов. Ресурсы в ней будут также удалены. Чтобы удалить группу ресурсов с помощью Azure CLI, используйте следующие команды:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
В предыдущем кратком руководстве также показано, как задать имя группы ресурсов по умолчанию. Если вы не планируете перейти к следующему краткому руководству, очистите это значение по умолчанию, выполнив такую команду CLI:
az config set defaults.group=
Следующие шаги
Дополнительные сведения о возможностях мониторинга в Azure Spring Apps см. в следующих статьях: