feat: логирование вебхука до БД + файловый лог с ротацией
All checks were successful
CI / test (push) Successful in 47s

- Каждый входящий POST /ingress/grafana: INFO-строка (status, кол-во алертов,
  первые лейблы) и DEBUG-блок с полным JSON телом (до 8КБ)
  — видно даже если БД упала с 500
- LOG_FILE в .env / env: RotatingFileHandler 10MB×5 файлов
- LOG_LEVEL=debug теперь показывает полные тела вебхуков
- basicConfig уровень DEBUG (uvicorn.access / asyncio приглушены)

Made-with: Cursor
This commit is contained in:
Alexandr
2026-04-03 15:59:17 +03:00
parent 80645713a0
commit c9b97814a5
5 changed files with 86 additions and 8 deletions

View File

@ -34,6 +34,9 @@ class Settings(BaseSettings):
forgejo_url: str = Field(default="", validation_alias="FORGEJO_URL")
forgejo_token: str = Field(default="", validation_alias="FORGEJO_TOKEN")
log_level: str = Field(default="info", validation_alias="LOG_LEVEL")
# Путь к лог-файлу. Пусто = не писать в файл. Пример: /var/log/onguard24/app.log
# Файл ротируется: 10 МБ × 5 штук (~50 МБ суммарно).
log_file: str = Field(default="", validation_alias="LOG_FILE")
# Устаревшее: автосоздание инцидента на каждый вебхук (без учёта irm_alerts). По умолчанию выкл.
auto_incident_from_alert: bool = Field(
default=False,