Insert a new Phase 1 (deployment: Compose + Traefik on a server, marked Done) between the base project and the OTel concepts phase, and shift the old phases 1-10 to 2-11. Update summary, intro, README and CLAUDE.md references (spoiler rules now target Phase 9, the bottleneck hunt). Add docker-compose.traefik.yml: an override that fronts the gateway with Traefik and Let's Encrypt and removes all other published host ports. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
41 lines
2.2 KiB
Markdown
41 lines
2.2 KiB
Markdown
# Phase 11 — Package the delivery
|
|
|
|
*Part of `docs/roadmap/` — see [`intro.md`](intro.md) for platform/background context and [`summary.md`](summary.md) for how every phase fits together. Prev: [`phase-10.md`](phase-10.md) · Next: [`summary.md`](summary.md)*
|
|
|
|
**Status:** Not started
|
|
|
|
**Message:** Depends on every prior phase being done — this is the wrap-up,
|
|
not independent work.
|
|
|
|
**Time-box:** one evening.
|
|
|
|
Babak gave you a task; deliver it like an engineer, not like a student.
|
|
|
|
1. **`README.md`** — architecture diagram, one-command start, what each container is
|
|
for, and a "here's the demo" script.
|
|
2. **The five-minute demo path**, rehearsed:
|
|
- Delete every dashboard in the Grafana UI, then `ansible-playbook
|
|
playbooks/grafana-stack.yml` — the whole platform and every dashboard rebuilt
|
|
from code, one command.
|
|
- Submit one transaction from the frontend, then follow it through Grafana: RED
|
|
dashboard → latency spike → exemplar → trace → span → logs for that span → back
|
|
to the trace. One request, all three signals, no searching.
|
|
- `make chaos-nightmare && make load-stress` — watch the SLO burn, the alert fire,
|
|
and the service map turn red at a specific node.
|
|
- Show `docs/INVESTIGATION.md` and how you found the pathologies.
|
|
3. **The written answers** Babak asked for, as documents in the repo, not as a
|
|
conversation: `docs/SLO.md`, `docs/PIPELINE-CHOICES.md`,
|
|
`docs/INVESTIGATION.md`, plus a short `docs/CONCEPTS.md` covering P95/P99,
|
|
RTO/RPO/SLA/SLO/error budget in your own words.
|
|
4. **The test suite as part of the story.** Show `make test` green, then show the
|
|
three generations of the call-counting assertion side by side —
|
|
`docker logs | grep`, then LogQL, then TraceQL — as concrete evidence of what
|
|
each signal bought you. Most people demo dashboards; almost nobody can show
|
|
their observability work paying off inside their own test suite.
|
|
5. **A "what I'd do differently in production" section.** Tail sampling instead of
|
|
100%; Mimir instead of raw Prometheus for retention; Alloy as a DaemonSet;
|
|
log volume budgeting; PII redaction in the Collector; multi-tenancy. Naming what
|
|
you *didn't* do, and why, is the strongest signal of seniority in the whole
|
|
delivery.
|
|
|