Metadata-Version: 2.3
Name: scrapy-lokilog
Version: 1.0.0
Summary: scrapy extension for lokilog
License: MIT
Author: ahapk
Author-email: ahapka1@gmail.com
Requires-Python: >=3.12
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: lokilog (>=1.0.0,<2.0.0)
Requires-Dist: scrapy (>=2.14.2,<3.0.0)
Description-Content-Type: text/markdown

# scrapy-lokilog

Scrapy extension for non-blocking logging to Grafana Loki via [lokilog](https://github.com/blind0/lokilog).

## Installation
```bash
pip install scrapy-lokilog
```

## Quick Start
Add the extension and Loki URL to your Scrapy `settings.py`:

```python
EXTENSIONS = {
    'scrapy_lokilog.LokiLogExtension': 500,
}

LOKILOG_URL = "http://localhost:3100"

# Optional: Add static labels
LOKILOG_LABELS = {"env": "prod", "service": "scraper"}

# Optional: Fields from `extra={}` to promote to Loki labels
LOKILOG_EXTRACTED_LABELS = ["user_id", "spider_name"]
```

---

# scrapy-lokilog (RU)

Расширение Scrapy для неблокирующей отправки логов в Grafana Loki через [lokilog](https://github.com/blind0/lokilog).

## Установка
```bash
pip install scrapy-lokilog
```

## Быстрый старт
Добавьте расширение и URL вашего Loki в `settings.py` проекта Scrapy:

```python
EXTENSIONS = {
    'scrapy_lokilog.LokiLogExtension': 500,
}

LOKILOG_URL = "http://localhost:3100"

# Опционально: Добавить статические лейблы
LOKILOG_LABELS = {"env": "prod", "service": "scraper"}

# Опционально: Поля из `extra={}`, которые станут лейблами в Loki
LOKILOG_EXTRACTED_LABELS = ["user_id", "spider_name"]
```

