feat: major improvements and fixes
- Fixed Docker permissions issue by running as root user - Added DEBUG_MODE support with conditional Swagger docs and auto-reload - Created start.sh script for conditional Uvicorn execution - Removed verbose debug logs from WebSocket status endpoint - Added comprehensive screenshots to documentation - Enhanced help tooltip with full-screen modal design - Added theme switcher to error page - Updated documentation with local development and Docker benefits - Fixed WebSocket status display issues - Improved hotkey functionality and documentation - Added detailed project descriptions for local dev and Docker users Technical improvements: - Dockerfile: removed appuser switch, simplified permissions - docker-compose.yml: kept user: 0:0 for Docker socket access - app.py: removed debug prints, added DEBUG_MODE support - templates: enhanced UI/UX with better tooltips and themes - docs: comprehensive updates with new screenshots and descriptions
This commit is contained in:
36
docs/api.md
36
docs/api.md
@@ -14,7 +14,14 @@
|
||||
|
||||
## Обзор API
|
||||
|
||||
LogBoard+ предоставляет REST API и WebSocket API для работы с логами Docker контейнеров.
|
||||
LogBoard+ предоставляет REST API и WebSocket API для работы с логами Docker контейнеров. API разработан для интеграции с системами мониторинга и автоматизации, а также для создания собственных клиентов.
|
||||
|
||||
### 🎯 **Применение API**
|
||||
|
||||
- **Интеграция с CI/CD** - автоматический мониторинг логов в пайплайнах
|
||||
- **Собственные дашборды** - создание кастомных интерфейсов мониторинга
|
||||
- **Автоматизация** - скрипты для анализа логов и алертинга
|
||||
- **Локальная разработка** - интеграция с IDE и инструментами разработки
|
||||
|
||||
### Базовый URL
|
||||
|
||||
@@ -322,6 +329,33 @@ curl -X GET "http://localhost:9001/api/logs/abc123def456?tail=100&since=2024-01-
|
||||
}
|
||||
```
|
||||
|
||||
#### GET /api/websocket/status
|
||||
|
||||
Получение статуса WebSocket соединений.
|
||||
|
||||
**Заголовки:**
|
||||
```
|
||||
Authorization: Bearer <token>
|
||||
```
|
||||
|
||||
**Ответ:**
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "available",
|
||||
"message": "WebSocket соединения доступны",
|
||||
"containers_count": 5,
|
||||
"timestamp": "2024-01-15T10:30:15.123456"
|
||||
}
|
||||
```
|
||||
|
||||
**Возможные статусы:**
|
||||
- `available` - WebSocket соединения доступны, есть активные контейнеры
|
||||
- `no_containers` - Нет доступных контейнеров для подключения
|
||||
- `error` - Ошибка проверки статуса
|
||||
|
||||
**Примечание:** Когда сервер возвращает статус `available`, клиент всегда показывает `ws: on`, независимо от наличия активных клиентских соединений.
|
||||
|
||||
### Системные
|
||||
|
||||
#### GET /healthz
|
||||
|
||||
@@ -97,6 +97,20 @@ LogBoard+ использует переменные окружения для н
|
||||
| `WEB_DESCRIPTION` | Описание веб-интерфейса | `Веб-панель для просмотра логов микросервисов` | Нет |
|
||||
| `WEB_VERSION` | Версия веб-интерфейса | `1.0.0` | Нет |
|
||||
|
||||
### Настройки режима отладки
|
||||
|
||||
| Переменная | Описание | По умолчанию | Обязательная |
|
||||
|------------|----------|--------------|--------------|
|
||||
| `DEBUG_MODE` | Режим отладки | `false` | Нет |
|
||||
|
||||
**Режим отладки включает:**
|
||||
- **Auto-reload** - автоматическая перезагрузка при изменении кода
|
||||
- **Swagger UI** - документация API по адресу `/docs`
|
||||
- **ReDoc** - альтернативная документация по адресу `/redoc`
|
||||
- **Подробное логирование** - детальные логи для отладки
|
||||
|
||||
**⚠️ Важно:** В продакшене обязательно установите `DEBUG_MODE=false`!
|
||||
|
||||
### Настройки уведомлений
|
||||
|
||||
| Переменная | Описание | По умолчанию | Обязательная |
|
||||
@@ -331,6 +345,40 @@ LOG_LEVEL=DEBUG
|
||||
# Безопасность
|
||||
AUTH_ENABLED=true
|
||||
SESSION_TIMEOUT=7200
|
||||
|
||||
# Режим отладки
|
||||
DEBUG_MODE=true
|
||||
```
|
||||
|
||||
### Режим отладки
|
||||
|
||||
```bash
|
||||
# .env для режима отладки
|
||||
LOGBOARD_PORT=9001
|
||||
LOGBOARD_USER=admin
|
||||
LOGBOARD_PASS=dev-password
|
||||
SECRET_KEY=dev-secret-key
|
||||
ENCRYPTION_KEY=dev-encryption-key
|
||||
|
||||
# Docker настройки
|
||||
DOCKER_HOST=unix:///var/run/docker.sock
|
||||
|
||||
# Производительность
|
||||
LOGBOARD_TAIL=50
|
||||
LOGBOARD_AJAX_UPDATE_INTERVAL=500
|
||||
LOG_LEVEL=DEBUG
|
||||
|
||||
# Безопасность
|
||||
AUTH_ENABLED=true
|
||||
SESSION_TIMEOUT=7200
|
||||
|
||||
# Режим отладки (ВКЛЮЧЕН)
|
||||
DEBUG_MODE=true
|
||||
|
||||
# Команды для управления режимом отладки:
|
||||
# make debug-on # Включить режим отладки
|
||||
# make debug-off # Выключить режим отладки
|
||||
# make debug-status # Проверить статус
|
||||
```
|
||||
|
||||
### Тестирование
|
||||
@@ -386,6 +434,9 @@ SESSION_TIMEOUT=3600
|
||||
LOG_LEVEL=WARNING
|
||||
LOG_FORMAT=json
|
||||
|
||||
# Режим отладки (ОБЯЗАТЕЛЬНО ВЫКЛЮЧЕН в продакшене)
|
||||
DEBUG_MODE=false
|
||||
|
||||
# Уведомления
|
||||
NOTIFICATIONS_ENABLED=true
|
||||
SMTP_HOST=smtp.company.com
|
||||
|
||||
@@ -5,7 +5,30 @@
|
||||
|
||||
## Обзор
|
||||
|
||||
LogBoard+ - это современная веб-панель для мониторинга и просмотра логов Docker контейнеров в реальном времени. Приложение предоставляет удобный веб-интерфейс для работы с логами микросервисов, поддерживает множественные проекты Docker Compose и включает в себя функции безопасности.
|
||||
LogBoard+ - это современная веб-панель для мониторинга и просмотра логов Docker контейнеров в реальном времени. Приложение идеально подходит для локальной разработки, позволяя разработчикам всегда держать логи микросервисов перед глазами на втором мониторе.
|
||||
|
||||
### 🎯 **Идеально для локальной разработки**
|
||||
|
||||
LogBoard+ особенно полезен для разработчиков, работающих с микросервисной архитектурой:
|
||||
|
||||
- **Второй монитор** - Держите логи всех микросервисов постоянно видимыми
|
||||
- **Быстрая отладка** - Мгновенный доступ к логам без переключения между терминалами
|
||||
- **Мониторинг в реальном времени** - Видите проблемы сразу, как они возникают
|
||||
- **Централизованный просмотр** - Все логи в одном месте, а не в десятках терминалов
|
||||
|
||||
### 🐳 **Оптимизирован для Docker и Docker Compose**
|
||||
|
||||
Если ваша инфраструктура основана на Docker и Docker Compose, LogBoard+ станет незаменимым инструментом:
|
||||
|
||||
- **Автоматическое обнаружение** всех проектов Docker Compose
|
||||
- **Быстрый просмотр логов** всех контейнеров в проекте
|
||||
- **Фильтрация по проектам** - легко переключаться между разными проектами
|
||||
- **Multi-view режим** - одновременный просмотр логов нескольких контейнеров
|
||||
- **Интеграция с Docker API** - прямая работа с контейнерами
|
||||
|
||||
### 🚀 **Производительность и удобство**
|
||||
|
||||
Приложение предоставляет удобный веб-интерфейс для работы с логами микросервисов, поддерживает множественные проекты Docker Compose и включает в себя функции безопасности.
|
||||
|
||||
## Быстрый старт
|
||||
|
||||
@@ -75,6 +98,39 @@ make up
|
||||
- **[env.example](../env.example)** - Пример конфигурации
|
||||
- **[Makefile](../Makefile)** - Команды управления
|
||||
|
||||
## Скриншоты
|
||||
|
||||
### 🔐 Страница входа
|
||||
| Светлая тема | Темная тема |
|
||||
|--------------|-------------|
|
||||
|  |  |
|
||||
|
||||
### 📊 Основной интерфейс
|
||||
| Светлая тема | Темная тема |
|
||||
|--------------|-------------|
|
||||
|  |  |
|
||||
|
||||
### 🖥️ Multi-view режим
|
||||

|
||||
|
||||
### 📋 Карточки контейнеров
|
||||

|
||||
|
||||
### 📁 Проекты
|
||||

|
||||
|
||||
### ⚙️ Настройки
|
||||

|
||||
|
||||
### 🔧 Сворачиваемая боковая панель
|
||||

|
||||
|
||||
### ❓ Справка
|
||||

|
||||
|
||||
### 🚨 Страницы ошибок
|
||||

|
||||
|
||||
## Архитектура
|
||||
|
||||
### Технологический стек
|
||||
|
||||
@@ -5,12 +5,41 @@
|
||||
|
||||
## Содержание
|
||||
|
||||
1. [Предварительные требования](#предварительные-требования)
|
||||
2. [Установка](#установка)
|
||||
3. [Настройка](#настройка)
|
||||
4. [Первый запуск](#первый-запуск)
|
||||
5. [Проверка установки](#проверка-установки)
|
||||
6. [Настройка для продакшена](#настройка-для-продакшена)
|
||||
1. [Обзор и применение](#обзор-и-применение)
|
||||
2. [Предварительные требования](#предварительные-требования)
|
||||
3. [Установка](#установка)
|
||||
4. [Настройка](#настройка)
|
||||
5. [Первый запуск](#первый-запуск)
|
||||
6. [Проверка установки](#проверка-установки)
|
||||
7. [Настройка для продакшена](#настройка-для-продакшена)
|
||||
|
||||
## Обзор и применение
|
||||
|
||||
### 🎯 **Идеально для локальной разработки**
|
||||
|
||||
LogBoard+ создан специально для разработчиков, работающих с микросервисной архитектурой. Если вы используете Docker и Docker Compose для локальной разработки, этот инструмент станет незаменимым помощником:
|
||||
|
||||
- **Второй монитор** - Держите логи всех микросервисов постоянно видимыми
|
||||
- **Быстрая отладка** - Мгновенный доступ к логам без переключения между терминалами
|
||||
- **Мониторинг в реальном времени** - Видите проблемы сразу, как они возникают
|
||||
- **Централизованный просмотр** - Все логи в одном месте, а не в десятках терминалов
|
||||
|
||||
### 🐳 **Оптимизирован для Docker и Docker Compose**
|
||||
|
||||
Если ваша инфраструктура основана на Docker и Docker Compose, LogBoard+ предоставляет:
|
||||
|
||||
- **Автоматическое обнаружение** всех проектов Docker Compose
|
||||
- **Быстрый просмотр логов** всех контейнеров в проекте
|
||||
- **Фильтрация по проектам** - легко переключаться между разными проектами
|
||||
- **Multi-view режим** - одновременный просмотр логов нескольких контейнеров
|
||||
- **Интеграция с Docker API** - прямая работа с контейнерами
|
||||
|
||||
### 💡 **Сценарии использования**
|
||||
|
||||
- **Локальная разработка** - мониторинг логов микросервисов на втором мониторе
|
||||
- **Отладка проблем** - быстрый поиск ошибок в логах
|
||||
- **Тестирование** - наблюдение за поведением системы в реальном времени
|
||||
- **Демонстрации** - показ работы системы клиентам или команде
|
||||
|
||||
## Предварительные требования
|
||||
|
||||
|
||||
Reference in New Issue
Block a user