Persistence: - one delivery state per sink, with claim, crash recovery, and index replacement - retention for delivered and dead records - LMDB writes moved off the event loop Pipeline: - one attempt per dispatch, with the next try scheduled by next_retry_at - backpressure through max_queue_size - reload re-reads YAML; SIGTERM drains and SIGHUP reloads Plugins: - journald source, enricher and filter processors, Loki sink - built-ins register when entry points are missing API and CLI: - health, metrics, per-sink queue, and dead-letter replay - startup prints the pipeline on one line Tests: - dispatch, plugins, metrics, CLI, and persistence coverage
37 lines
248 B
Plaintext
37 lines
248 B
Plaintext
# Python
|
|
__pycache__/
|
|
*.py[cod]
|
|
*.egg-info/
|
|
dist/
|
|
build/
|
|
*.egg
|
|
.venv/
|
|
venv/
|
|
|
|
# uv
|
|
.lock
|
|
uv.lock
|
|
|
|
# IDE
|
|
.vscode/
|
|
.idea/
|
|
*.swp
|
|
*.swo
|
|
*~
|
|
|
|
# OS
|
|
.DS_Store
|
|
Thumbs.db
|
|
|
|
# Project
|
|
data/
|
|
logs/
|
|
*.pid
|
|
*.sock
|
|
/daena.yaml
|
|
/deploy/graylog/
|
|
|
|
# Env
|
|
.env
|
|
.env.local
|