Spring Boot Admin, так просто в использовании!

Spring Boot Java задняя часть
Spring Boot Admin, так просто в использовании!

Spring Boot Admin (SBA) — это проект сообщества с открытым исходным кодом для управления и мониторинга приложений Spring Boot. Приложение можно зарегистрировать в SBA через http или механизм обнаружения службы Spring Cloud, после чего можно будет реализовать визуальное управление и просмотр проектов Spring Boot.

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

Его окончательный эффект отображения выглядит следующим образом:image.png

1. Построить терминал мониторинга SBA

Нам нужно создать проект администратора Spring Boot для мониторинга и управления нашим проектом Spring Boot. Способ его создания аналогичен созданию обычного проекта Spring Boot. Конкретные шаги заключаются в следующем. Создайте проект Spring Boot с помощью Idea:image.png image.pngЗдесь следует отметить, что необходимо добавить поддержку серверной среды Spring Boot Admin (Server), как показано на следующем рисунке:image.pngТо есть в созданный проект Spring Boot нужно добавить следующие две важные поддержки фреймворка:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
  <groupId>de.codecentric</groupId>
  <artifactId>spring-boot-admin-starter-server</artifactId>
</dependency>

1.1 Включить службу SBA

После создания проекта необходимо запустить службу SBA на классе запуска:

import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@EnableAdminServer // 添加此行代码
@SpringBootApplication 
public class SbaserverApplication {
    public static void main(String[] args) {
        SpringApplication.run(SbaserverApplication.class, args);
    }
}

1.2 Настройка номера порта SBA

Вы можете начать непосредственно с настройки номера порта проекта в application.properties, Номер порта, который я настроил, — 9001:

server.port=9001

PS: Основная цель настройки номера порта — не конфликтовать с другими проектами Spring Boot.Если SBA развертывается отдельно, этот шаг можно пропустить.

После запуска проекта вы можете увидеть домашнюю страницу SBA, как показано ниже:image.pngВ настоящее время в SBA нет проекта, который нужно отслеживать. Далее давайте создадим проект Spring Boot и добавим его в SBA для мониторинга и управления.

2. Создайте обычный проект SpringBoot

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

<dependency>
  <groupId>de.codecentric</groupId>
  <artifactId>spring-boot-admin-starter-client</artifactId>
</dependency>

Затем настройте серверный адрес SBA в файле application.properties, который является адресом нашего первого шага по созданию проекта SBA.Содержимое конфигурации выглядит следующим образом:

# 当前项目端口号
server.port=8080
# Spring Boot Admin 监控服务器端地址
spring.boot.admin.client.url=http://localhost:9001

«spring.boot.admin.client.url» — это адрес мониторинга SBA.

3. Обзор мониторинга SpringBootAdmin

После настройки приведенной выше информации проверьте страницу администратора Spring Boot, чтобы увидеть отслеживаемый проект Spring Boot, как показано на следующем рисунке:image.pngВы также можете нажать «Стена приложений», чтобы просмотреть все отслеживаемые проекты Spring Boot в Spring Boot Admin, как показано на следующем рисунке:image.pngНажмите «Применить», чтобы перейти на страницу сведений, как показано ниже:image.png image.pngЖурнал событий содержит отображение различных состояний Spring Boot (UP — нормальное, OFFLINE — ненормальное) и время возникновения, как показано на следующем рисунке:image.png

4. Мониторинг исключений SpringBoot

Когда мы вручную останавливаем отслеживаемый проект Spring Boot, мы видим, что приложение было остановлено в Spring Boot Admin, как показано на следующем рисунке:image.pngМы также можем просмотреть конкретное время простоя Spring Boot через журнал событий, как показано на следующем рисунке:image.png

5. Настройте для просмотра дополнительных элементов мониторинга

Из приведенного выше контента видно, что вариантов мониторинга Spring Boot по-прежнему мало.Как мы можем просмотреть больше элементов мониторинга? Чтобы решить эту проблему, нам нужно добавить поддержку фреймворка spring-boot-starter-actuator в отслеживаемый проект Spring Boot и включить настройку всех элементов мониторинга.Окончательный эффект отображения выглядит следующим образом:image.pngДалее настроим эти элементы мониторинга.

5.1 Добавление поддержки каркаса привода

Добавьте поддержку среды привода в отслеживаемый проект Spring Boot, то есть добавьте следующую конфигурацию в pom.xml:

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

Вручную щелкните Maven, чтобы импортировать зависимости (если автоматический импорт включен, этот шаг можно пропустить).

5.2 Настройте и откройте все элементы мониторинга

Добавьте следующую конфигурацию в отслеживаемый проект Spring Boot:

# 开启监控所有项
management.endpoints.web.exposure.include=*

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

5.3 Мониторинг предварительного просмотра проекта

После включения всех элементов мониторинга Spring Boot вы можете просматривать через SBA следующее:

  • Время запуска, совокупное время работы;
  • Количество процессов и потоков и занятых ресурсов ЦП;
  • Детали сбора мусора, время сбора и затраченное время;
  • Дамп потока JVM, сведения о дампе памяти и загрузка соответствующего файла;
  • Может просматривать и настраивать уровни журналов в проектах Spring Boot;
  • Просмотр мониторинга производительности проекта Spring Boot;
  • Просмотр информации об операционной среде Spring Boot;
  • Просмотреть всю информацию о классе Spring Boot;
  • Просмотр запланированных задач в Spring Boot;
  • Просмотр и управление всеми кэшами в проекте Spring Boot.

Ниже скриншоты нескольких важных страниц, давайте посмотрим.

5.3.1 Просмотр операционной среды

image.png image.png

5.3.2 Просмотр запланированных задач

image.png

5.3.3 Конфигурация уровня журнала проекта

image.pngМы можем динамически настроить уровень журнала в проекте через Spring Boot Admin.

5.3.4 Представление потока и памяти JVM

image.png

5.3.5 Просмотр всех кешей SpringBoot

image.pngКонечно, мы также можем удалить эти кеши.

6. Просмотр журнала проекта в реальном времени

Для просмотра информации журнала в проекте мониторинга необходимо выполнить предварительное условие.Предварительное условие заключается в том, что отслеживаемый проект Spring Boot должен настроить путь к хранилищу журнала или имя файла хранилища журнала, а также настроить только один из этих двух элементов. проект сохранит журнал на диск, чтобы его можно было просмотреть через SBA.Я настроил путь к журналу и добавил следующую конфигурацию в файл конфигурации application.properties Spring Boot:

# 设置日志保存路径
logging.file.path=C:\\work\\log

После завершения настроек перезапустите проект Spring Boot, а затем обновите страницу SBA, окончательный эффект отображения будет следующим:image.pngНа этом этапе мы можем просматривать информацию журнала в реальном времени, конечно, вы также можете загрузить журнал в любое время, если это необходимо.

Суммировать

Spring Boot Admin (SBA) — это проект сообщества с открытым исходным кодом для управления и мониторинга приложений Spring Boot, он предоставляет подробную информацию о работоспособности (Health), информацию о памяти, свойствах системы и среды JVM, информацию о сборе мусора, настройки и просмотр журнала, такие функции, как просмотр задач по времени, просмотр кэша Spring Boot и управление им.

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

Самостоятельно судить о правильном и неправильном, слушать других и подсчитывать выгоды и потери.

Официальная учетная запись: Сообщество китайского языка Java