Spring Boot Admin (SBA) — это проект сообщества с открытым исходным кодом для управления и мониторинга приложений Spring Boot. Приложение можно зарегистрировать в SBA через http или механизм обнаружения службы Spring Cloud, после чего можно будет реализовать визуальное управление и просмотр проектов Spring Boot.
Администратор Spring Boot может отслеживать автономные или кластерные проекты Spring Boot, он предоставляет подробную информацию о работоспособности, информацию о памяти, свойства системы и среды JVM, информацию о сборе мусора, настройки и просмотр журнала, просмотр запланированных задач, просмотр и управление кэшем Spring Boot и другие функции. Далее, давайте создадим и будем использовать его вместе.
Его окончательный эффект отображения выглядит следующим образом:
1. Построить терминал мониторинга SBA
Нам нужно создать проект администратора Spring Boot для мониторинга и управления нашим проектом Spring Boot. Способ его создания аналогичен созданию обычного проекта Spring Boot. Конкретные шаги заключаются в следующем. Создайте проект Spring Boot с помощью Idea: Здесь следует отметить, что необходимо добавить поддержку серверной среды Spring Boot Admin (Server), как показано на следующем рисунке:То есть в созданный проект 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, как показано ниже:В настоящее время в 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, как показано на следующем рисунке:Вы также можете нажать «Стена приложений», чтобы просмотреть все отслеживаемые проекты Spring Boot в Spring Boot Admin, как показано на следующем рисунке:Нажмите «Применить», чтобы перейти на страницу сведений, как показано ниже: Журнал событий содержит отображение различных состояний Spring Boot (UP — нормальное, OFFLINE — ненормальное) и время возникновения, как показано на следующем рисунке:
4. Мониторинг исключений SpringBoot
Когда мы вручную останавливаем отслеживаемый проект Spring Boot, мы видим, что приложение было остановлено в Spring Boot Admin, как показано на следующем рисунке:Мы также можем просмотреть конкретное время простоя Spring Boot через журнал событий, как показано на следующем рисунке:
5. Настройте для просмотра дополнительных элементов мониторинга
Из приведенного выше контента видно, что вариантов мониторинга Spring Boot по-прежнему мало.Как мы можем просмотреть больше элементов мониторинга? Чтобы решить эту проблему, нам нужно добавить поддержку фреймворка spring-boot-starter-actuator в отслеживаемый проект Spring Boot и включить настройку всех элементов мониторинга.Окончательный эффект отображения выглядит следующим образом:Далее настроим эти элементы мониторинга.
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.Отображаются дополнительные элементы мониторинга, как показано на следующем рисунке:
5.3 Мониторинг предварительного просмотра проекта
После включения всех элементов мониторинга Spring Boot вы можете просматривать через SBA следующее:
- Время запуска, совокупное время работы;
- Количество процессов и потоков и занятых ресурсов ЦП;
- Детали сбора мусора, время сбора и затраченное время;
- Дамп потока JVM, сведения о дампе памяти и загрузка соответствующего файла;
- Может просматривать и настраивать уровни журналов в проектах Spring Boot;
- Просмотр мониторинга производительности проекта Spring Boot;
- Просмотр информации об операционной среде Spring Boot;
- Просмотреть всю информацию о классе Spring Boot;
- Просмотр запланированных задач в Spring Boot;
- Просмотр и управление всеми кэшами в проекте Spring Boot.
Ниже скриншоты нескольких важных страниц, давайте посмотрим.
5.3.1 Просмотр операционной среды
5.3.2 Просмотр запланированных задач
5.3.3 Конфигурация уровня журнала проекта
Мы можем динамически настроить уровень журнала в проекте через Spring Boot Admin.
5.3.4 Представление потока и памяти JVM
5.3.5 Просмотр всех кешей SpringBoot
Конечно, мы также можем удалить эти кеши.
6. Просмотр журнала проекта в реальном времени
Для просмотра информации журнала в проекте мониторинга необходимо выполнить предварительное условие.Предварительное условие заключается в том, что отслеживаемый проект Spring Boot должен настроить путь к хранилищу журнала или имя файла хранилища журнала, а также настроить только один из этих двух элементов. проект сохранит журнал на диск, чтобы его можно было просмотреть через SBA.Я настроил путь к журналу и добавил следующую конфигурацию в файл конфигурации application.properties Spring Boot:
# 设置日志保存路径
logging.file.path=C:\\work\\log
После завершения настроек перезапустите проект Spring Boot, а затем обновите страницу SBA, окончательный эффект отображения будет следующим:На этом этапе мы можем просматривать информацию журнала в реальном времени, конечно, вы также можете загрузить журнал в любое время, если это необходимо.
Суммировать
Spring Boot Admin (SBA) — это проект сообщества с открытым исходным кодом для управления и мониторинга приложений Spring Boot, он предоставляет подробную информацию о работоспособности (Health), информацию о памяти, свойствах системы и среды JVM, информацию о сборе мусора, настройки и просмотр журнала, такие функции, как просмотр задач по времени, просмотр кэша Spring Boot и управление им.
Нам нужно создать сервер SBA для мониторинга одного или нескольких проектов Spring Boot.Отслеживаемый проект Spring Boot должен добавить поддержку инфраструктуры клиента SBA, а также добавить структуру привода и соответствующую конфигурацию для достижения идеального проекта Spring Boot. .
Самостоятельно судить о правильном и неправильном, слушать других и подсчитывать выгоды и потери.
Официальная учетная запись: Сообщество китайского языка Java