Skip to content

Celery+redis+prom+grafana#24

Closed
sumdher wants to merge 3 commits into
mainfrom
celery+redis+prom+grafana
Closed

Celery+redis+prom+grafana#24
sumdher wants to merge 3 commits into
mainfrom
celery+redis+prom+grafana

Conversation

@sumdher

@sumdher sumdher commented Jun 25, 2026

Copy link
Copy Markdown
Owner

No description provided.

sumdher added 3 commits June 24, 2026 18:55
OpenTelemetry + Grafana Tempo: auto-instrument FastAPI, SQLAlchemy, HTTPX,
Redis, and Celery; manual llm.complete spans in MeteredLLMProvider; separate
service names (spendhound-api / spendhound-worker) visible in Tempo service map.

WAL-G continuous Postgres backup to Cloudflare R2: archive_command streams WAL
segments on every write, archive_timeout=60 caps max data loss to 60s, daily
base backup sidecar (supercronic) at 02:00 UTC, 7-day retention, PITR-capable.

PgBouncer connection pooler in session mode (scram-sha-256) between app and
Postgres. Session mode required for asyncpg compatibility - transaction mode
causes DISCARD ALL to reset session-level settings intermittently.

Alertmanager with Slack webhook: BackendDown (critical) and HighErrorRate
(warning) rules; inhibit_rule suppresses HighErrorRate when BackendDown fires.

Loki + Promtail: structured log aggregation from Docker socket; trace IDs in
logs become clickable links to Tempo traces.

GDPR privacy page (Article 17 data erasure, data residency disclosure).

Fix: Prometheus and Alertmanager write credential files to /tmp/ not /run/.
Both images (prom/prometheus, prom/alertmanager) run as nobody; /run/ is
root-owned and not writable. /tmp/ is world-writable (mode 1777).

Fix: WAL-G backup sidecar uses absolute path /usr/local/bin/supercronic.
Docker OCI exec resolves bare command names differently from shell which.
@sumdher sumdher closed this Jun 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant