Skip to content

Repository files navigation

LogBoard

Платформа для сбора и анализа логов. Mono-repo с двумя сервисами:

  • core — управление пользователями, проектами, авторизация (Spring Boot + PostgreSQL)
  • log — приём, хранение и поиск логов (Spring Boot + ClickHouse + Elasticsearch)

Требования

  • Docker и Docker Compose
  • JDK 21 (для локальной разработки без Docker)

Быстрый старт (локальная разработка и тестирование)

git clone <repo-url>
cd LogBoard
docker compose up -d

docker-compose.override.yml содержит тестовые значения переменных окружения (тестовые пароли, dev JWT-секрет) и автоматически подхватывается Docker Compose. Этот файл используется только для локальной разработки и тестирования — на production он не применяется.

Сервисы будут доступны:

Запуск на сервере (production)

  1. Скопировать env.example в .env и заполнить настоящими значениями:
cp env.example .env
nano .env
  1. Сгенерировать надёжные секреты:
# Пароль PostgreSQL
openssl rand -base64 32

# JWT-секрет (для HS512, минимум 64 символа)
openssl rand -base64 64
  1. Запустить без override-файла, чтобы использовались значения из .env:
docker compose -f docker-compose.yml up -d

Запуск тестов

# Unit-тесты
cd core && ./gradlew test

# Интеграционные тесты
cd core && ./gradlew integrationTest

CI/CD

GitHub Actions автоматически запускает сборку и тесты при push в main/develop и при PR в main. При push в main после прохождения всех тестов происходит автоматический деплой на сервер.

Структура проекта

LogBoard/
├── core/                # Core-сервис (Spring Boot + PostgreSQL)
├── log/                 # Log-сервис (Spring Boot + ClickHouse + Elasticsearch)
├── docs/                # Документация и OpenAPI-спецификация
├── docker-compose.yml           # Основная конфигурация (переменные окружения)
├── docker-compose.override.yml  # Тестовые значения переменных (только для разработки и тестов)
└── env.example                  # Шаблон .env для production

About

Сервис для работы с логами

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages