# Simple Logger

Простая библиотека для логирования с цветным форматированием и поддержкой ротации файлов.

## Установка

```bash
pip install smpl-logger
```

Или установка из исходного кода:

```bash
pip install git+https://github.com/greengoblinalex/simple-logger.git
```

## Использование

```python
from simple_logger import get_logger

# Рекомендуется использовать __name__ в качестве имени логгера —
# это удобно для структурирования логов в больших проектах
logger = get_logger(__name__)

# Также можно явно передать строку, например:
# logger = get_logger("my_app")

logger.info("Это информационное сообщение")
logger.error("Это сообщение об ошибке")

# Логирование в файл и консоль
file_logger = get_logger(__name__, log_file="app.log")
file_logger.info("Это сообщение будет в файле и в консоли")
```

## Настройка

Вы можете настроить логгер, используя дополнительные параметры:

```python
logger = get_logger(
    name=__name__,  # Рекомендуется использовать __name__, но можно и строку
    log_file="app.log",
    level="DEBUG",  # Уровень логирования
    rotation_size=5 * 1024 * 1024,  # 5 МБ для ротации
    backup_count=3  # Хранить 3 архивных файла
)
```

## Настройка через .env файл

Вы также можете настроить параметры логирования через файл `.env` в корне вашего проекта:

```
LOG_DIR=logs                # Директория для хранения логов
LOG_LEVEL=INFO              # Уровень логирования
LOG_ROTATION_SIZE=5242880   # Размер для ротации файлов (5MB)
LOG_BACKUP_COUNT=3          # Количество архивных файлов
```

## Особенности

- 🎨 **Цветной вывод** - различные уровни логирования выделяются разными цветами
- 🔄 **Ротация файлов** - автоматическая ротация логов при достижении максимального размера
- ⚙️ **Гибкая настройка** - настройка через параметры функции или переменные окружения
- 📦 **Легковесность** - без внешних зависимостей, использует только стандартную библиотеку Python
- 🔧 **Простота использования** - минимальный код для начала работы

## Лицензия

MIT License - см. файл [LICENSE](LICENSE)
LOG_ROTATION_SIZE=5242880   # Размер файла для ротации (5 МБ)
LOG_BACKUP_COUNT=3          # Количество сохраняемых архивных файлов
```
