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


Администрирование и мониторинг приложений с помощью Spring Boot Actuator

Примечание.

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

План стандартного потребления и выделенный план вошли в период вывода из эксплуатации 30 сентября 2024 года, с полным завершением работы к концу марта 2025 года. Дополнительные сведения см. в статье «Миграция стандартного и выделенного плана потребления Azure Spring Apps в приложения контейнеров Azure».

Эта статья относится к:✅ Java ❎ C#

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

Spring Boot Actuator предоставляет готовые к работе функции в приложениях. Вы можете легко отслеживать приложение, собирать метрики и понимать состояние или действие базы данных с помощью этого средства. Вы получаете доступ к инструментам профессионального класса, не требуя их создания с нуля.

Актуатор предоставляет жизненно важные операционные данные о работающем приложении, таких как состояние работоспособности, метрики, информация и многое другое. В актуаторе используются конечные точки HTTP или расширения управления Java (JMX), с которыми легко взаимодействовать. После интеграции он предоставляет несколько конечных точек по умолчанию и, как и другие модули Spring, это легко настраивается и расширяется.

Azure Spring Apps использует актуатор для обогащения метрик с помощью JMX. Он также может работать с приложением "Живой просмотр" в корпоративном тарифе, чтобы помочь вам получить и взаимодействовать с данными из приложений.

Схема, показывющая поток данных с помощью Spring Boot Actuator.

Настройка Spring Boot Actuator

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

Добавить зависимость актуатора

Чтобы добавить актатор в проект на основе Maven, добавьте следующую зависимость:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
</dependencies>

Эта конфигурация работает с любой версией Spring Boot, так как версии учтены в списке материалов Spring Boot (BOM).

Настройка конечной точки актатора

По умолчанию приложение Spring Boot предоставляет только конечную точку health . Чтобы просмотреть настройки и настраиваемую среду, выполните следующие действия для активации конечных точек env и configprops.

  1. Перейдите в область обзора приложения, выберите "Конфигурация" в меню параметров и перейдите на страницу конфигурации переменных среды.

  2. Добавьте следующие свойства, как в <key>:<value> форме. Эта среда открывает следующие конечные точки Spring Actuator: health, envи configprops.

    management.endpoints.web.exposure.include: health,env,configprops
    
  3. Выберите Сохранить. Приложение перезагрузится автоматически и загружает новые переменные среды.

Теперь вы можете вернуться в область обзора приложения и ждать, пока состояние подготовки изменится на "Успешно".

Чтобы просмотреть все встроенные и связанные конфигурации конечных точек, ознакомьтесь с разделом "Предоставление конечных точек" в разделе "Функции Spring Boot, готовые к производству".

Конечная точка безопасного привода

При открытии приложения для общедоступного доступа эти конечные точки актатора также предоставляются общественности. Рекомендуется скрыть все конечные точки по параметру management.endpoints.web.exposure.exclude=*, так как exclude свойство имеет приоритет над свойством include . Это действие блокирует режим реального просмотра приложений в плане Enterprise и других приложениях или инструментах, которые используют конечную точку HTTP для актатора.

В плане Enterprise существует два способа защиты доступа:

  • Вы можете отключить общедоступную конечную точку приложений и настроить правило маршрутизации в VMware Spring Cloud Gateway, чтобы отключить доступ к актатору из общедоступной среды. Дополнительные сведения см. в разделе "Настройка VMware Spring Cloud Gateway".

  • Вы можете настроить актуатор для прослушивания другого HTTP-порта из основного приложения. В автономном приложении порт HTTP acтуатора по умолчанию совпадает с основным HTTP-портом. Чтобы приложение прослушивал другой порт, задайте management.server.port свойство. Приложение Live View не может автоматически обнаружить это изменение порта, поэтому также необходимо настроить свойство в развертывании Azure Spring Apps. Далее исполнительный механизм не является общедоступным, но приложение Live View может прочитать данные с конечной точки исполнительного механизма через другой порт. Для получения дополнительной информации см. Использование функции Live View приложения с планом Azure Spring Apps Enterprise.

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