#!/bin/bash # ============================================================================= # SmartSolTech - Скрипт для отображения логов # ============================================================================= # Цвета для вывода GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' RED='\033[0;31m' NC='\033[0m' log() { echo -e "${BLUE}[$(date '+%Y-%m-%d %H:%M:%S')]${NC} $1" } success() { echo -e "${GREEN}✅ $1${NC}" } warning() { echo -e "${YELLOW}⚠️ $1${NC}" } error() { echo -e "${RED}❌ $1${NC}" } # Проверка docker-compose.yml if [ ! -f "docker-compose.yml" ]; then error "docker-compose.yml не найден. Запустите скрипт из корня проекта." exit 1 fi # Обработка параметров case "${1:-}" in --help|-h) echo "SmartSolTech - Скрипт для отображения логов" echo "" echo "Использование:" echo " $0 - Показать все логи в реальном времени" echo " $0 web - Показать только логи веб-сервера" echo " $0 db - Показать только логи базы данных" echo " $0 pgadmin - Показать только логи PgAdmin" echo " $0 --tail 50 - Показать последние 50 строк" echo " $0 --help - Показать эту справку" echo "" exit 0 ;; --tail) if [ -z "$2" ]; then error "Укажите количество строк для --tail" exit 1 fi log "Показываем последние $2 строк логов..." docker-compose logs --tail=$2 ;; web|db|pgadmin) log "Показываем логи сервиса $1..." warning "Для выхода нажмите Ctrl+C" sleep 2 docker-compose logs -f $1 ;; "") echo "" echo "📋 SmartSolTech - Логи сервисов" echo "===============================" echo "" log "Статус сервисов:" docker-compose ps echo "" log "Показываем все логи в реальном времени..." warning "Для выхода нажмите Ctrl+C" sleep 2 docker-compose logs -f ;; *) error "Неизвестный параметр: $1" echo "Используйте --help для справки" exit 1 ;; esac