1. Введение
Чем больше проект делается, тем больше кажется, что мониторинг эксплуатации и технического обслуживания слишком важен для любой системы, чтобы быть подключенной к сети. Про мониторинг микросервисов Springboot я писал ранее[Springboot] Отслеживайте свое микросервисное приложение с помощью SpringBoot Admin, это решение может отслеживать в режиме реального времени и обеспечивать функцию напоминания о тревоге, но не может записывать исторические данные и не может просматривать ситуацию с работой и техническим обслуживанием, например, за последний 1 час или за последний 1 день. В этой статье представлен метод Prometheus + Grafana для мониторинга Springboot 2.X для достижения красивой и красивой визуализации данных.
2 Prometheus
Prometheus — это набор отличной системы мониторинга с открытым исходным кодом, сигнализации и базы данных временных рядов в наиболее распространенномKubernetes
В системах управления контейнерами это обычно сочетается сPrometheus
монитор.
2.1 Знакомство со Springboot
БудуPrometheus
Импортируйте зависимости следующим образом:
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
Для Springboot, чтобы включитьActuator
и откройте соответствующийEndpoint
:
management.endpoints.web.exposure.include=*
# 或者
management.endpoints.web.exposure.include=prometheus
запускатьSpringboot
После этого вы можете проверить правильность получения данных мониторинга по следующему URL-адресу:
localhost:8080/actuator/prometheus
Получение данных успешно, что указываетSpringboot
Данные мониторинга могут предоставляться в обычном режиме.
2.2 Способ использования Docker
Для удобства используйтеDocker
запускатьPrometheus
:
# 拉取docker镜像
docker pull prom/prometheus
Подготовить файл конфигурацииprometheus.yml
:
scrape_configs:
# 可随意指定
- job_name: 'spring'
# 多久采集一次数据
scrape_interval: 15s
# 采集时的超时时间
scrape_timeout: 10s
# 采集的路径
metrics_path: '/actuator/prometheus'
# 采集服务的地址,设置成Springboot应用所在服务器的具体地址
static_configs:
- targets: ['hostname:9000','hostname:8080']
Запустите экземпляр Docker:
# 端口为9090,指定配置文件
docker run -d -p 9090:9090 -v ~/temp/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus --config.file=/etc/prometheus/prometheus.yml
2.3 Тестирование и просмотр
После успешного запуска вы можете открыть веб-страницу для просмотра и отображения в графическом виде.http://локальный:9090/.
Как показано на рисунке выше, после открытия веб-страницы случайным образом выберите соответствующий индикатор и параметр мониторинга и нажмитеExecute
Вы можете просмотреть его.
3 Grafana
Grafana
это пакет для анализа и визуализации метрик с открытым исходным кодом, чистыйJavaScript
Инструмент для разработки передней работы, посещая библиотеку (например,InfluxDB
) для отображения пользовательских отчетов, отображения диаграмм и т. д. Его пользовательский интерфейс очень гибкий, богатый плагинами и шаблонами и мощный. Обычно используется при мониторинге данных временных рядов.
3.1 Установка и запуск Docker
# 拉取镜像
docker pull grafana/grafana
# 运行实例
docker run -d -p 3000:3000 grafana/grafana
После успешного запуска посетитеhttp://localhost:3000Проверка прошла успешно, первоначальный пароль учетной записи администратораadmin/admin
.
3.2 Настройка источника данных
Grafana
Для отображения данных необходимо настроить соответствующий источник данных В этой статье настроить ранее установленный и включенныйPrometheus
Источник данных, конкретная конфигурация показана на следующем рисунке:
должен быть в курсеAccess
выбиратьBrowser
режим, в противном случае данные не могут быть получены нормально. После завершения настройки нажмитеSave & Test
Вот и все.
3.3 Шаблон приложения
После того, как вы сможете получить данные, вы можете настроить отображение визуализации данных. Но если вы добавите один индикатор и один индикатор самостоятельно, это будет очень хлопотно. Фактически,Grafana
Предоставляет множество отличных шаблонов для веб-страницКонечно, поверни ах. ком/ Конечно, поверни ах/Я планирую…Находить.
В этой статье используетсяSpring Boot 2.1 StatisticsШаблон, способ импорта следующий:
нажмите+
№ -->Import
--> Введите ссылку или идентификатор шаблона --> Нажмите Загрузить.
После успешного импорта вы можете отслеживать данные, и интерфейс действительно приятный:
4 Резюме
В этой статье описывается, как использовать Prometheus + Grafana для мониторинга приложений Springboot, На самом деле, Prometheus + Grafana очень мощный инструмент, и стоит потратить время на его изучение.
Информация о версии программного обеспечения в этом примере выглядит следующим образом:
springboot.version=2.2.5
micrometer-registry-prometheus=1.3.5
prometheus.version=2.16
grafana.version=6.7.0-beta1
Добро пожаловать на общедоступный номерТыква медленный разговор>, буду обновлять для вас...
Читайте больше, делитесь больше, пишите больше, организуйте больше.