Beacon
Observability you own
Metrics, logs, traces and status pages on your own hardware, with OpenTelemetry at the centre.
- Metrics, logs and traces in one place
- No ingestion bill that grows with usage
- Status page you control
A working, pinned Docker Compose stack for self-hosted observability. Not a link dump - the integration layer: services wired together, environment template, quickstart, runbook, and a script that fetches the exact upstream sources at pinned commits.
Teams who need monitoring without per-seat pricing.
Choose your tier
One-time purchase. Higher tiers add components; the top tier adds a live onboarding session. Every tier includes the runbook, verify script and component guides.
- Working Compose stack
- Prometheus and Alertmanager wired
- Pinned source fetch
- Everything in Metrics Starter
- Fluent Bit and VictoriaMetrics
- Retention and sizing guide
- Everything in Logs & Metrics
- OpenTelemetry and Jaeger
- Dashboard guide
- Everything in Full Observability
- Thanos for object-storage scale
- 30 days priority support
- All eleven components
- 1:1 onboarding session
- Lifetime updates
How it fits together
Each service runs as its own container. The compose file defines the network, the volumes and the wiring between them.
11 services, pinned
Every project keeps its own licence and copyright. The stack ships the integration, not a fork.
| Component | What it does | Licence | Source |
|---|---|---|---|
| prometheus
Go |
Metrics collection and time-series storage. | Apache 2.0 | upstream 961c9ba409 |
| alertmanager
Go |
Alert routing, grouping and deduplication. | Apache 2.0 | upstream 61ba43d505 |
| VictoriaMetrics
Go |
Long-term metrics storage with a Prometheus-compatible API. | Apache 2.0 | upstream fb10241d38 |
| thanos
Go |
Long-term Prometheus storage and global querying at scale. | Apache 2.0 | upstream 1d2b2ae7d1 |
| fluent-bit
C |
Log collection and forwarding | Apache 2.0 | upstream a415d1b089 |
| opentelemetry-collector
Go |
Telemetry pipeline (metrics, logs, traces) | Apache 2.0 | upstream 9b084f609c |
| jaeger
Go |
Distributed tracing backend and UI. | Apache 2.0 | upstream d82a87cf20 |
| uptime-kuma
JavaScript |
Self-hosted uptime monitoring with status pages. | MIT | upstream e7420f8fa5 |
| upptime
Markdown |
Status page generated from GitHub Actions. | MIT | upstream 88ab501cee |
| superset
Python |
Dashboards and business intelligence over your warehouse. | Apache 2.0 | upstream 68f19947a8 |
| opentelemetry-js
TypeScript |
Instrumentation SDK for Node | Apache 2.0 | upstream 66268a83f6 |
A guide for every component
Written docs that ship inside the archive - role, reasoning and how to run each service.
Run it
# 1. fetch the pinned upstream sources
./fetch-sources.sh ./sources
# 2. configure and start
cp .env.example .env
docker compose up -d
# 3. confirm everything came up
./verify.sh
Docker Engine 24+ with the Compose v2 plugin. 4 GB RAM for light tiers, 16 GB+ for the complete deployment.