Система мониторинга с использованием Spring Kafka
Проект состоит из 2-х микросервисов:
- Metrics Producer собирает метрики работы приложения и отправляет их в Kafka топик "metrics-topic". Раз в 5 секунд отправляет одну из основных метрик в сервис-потребитель.
- Metrics Consumer принимает метрики из Kafka топика "metrics-topic" и сохраняет их в БД PostgreSQL. Позволяет получить список всех сохраненных метрик или конкретную метрику по id.
Swagger документация Metrics Producer доступна по ссылке: http://localhost:8081/swagger-ui/index.html
Swagger документация Metrics Consumer доступна по ссылке: http://localhost:8082/swagger-ui/index.html
Микросервисы успешно обмениваются данными через Kafka и обеспечивать сбор и хранение метрик работы приложения. Контроллеры и сервисы покрыты unit-тестами.
Для старта приложения необходимо:
- запустить postgreSQL через docker.compose или изменить настройки подключений к бд в application.yml микровсервиса Metrics Consumer
- запустить Kafka и Zookeeper через docker.compose
Стек технологий:
Java 17
Maven
Spring
PostgreSQL
Flyway
Kafka
Попов Илья (FozelRockfire)