Building Observable Domains
Learn to design domain-driven services that are observable from day one. Wire OpenTelemetry traces, metrics, and logs to your bounded contexts in Quarkus, Python, and C#.
Workshop Modules
Seven modules take you from domain discovery to production-grade observability, with hands-on exercises at every step.
Introduction and Setup
Meet the workshop domain, clone the repos, and verify your local stack is running.
The Domain Landscape
Map bounded contexts and identify the aggregates, entities, and value objects in an order-management domain.
Domain Events as Spans
Model domain events, then represent each as an OpenTelemetry span with semantic attributes.
Structured Observability
Add structured logging with trace correlation, define domain-specific metrics, and connect logs/traces/metrics in Grafana.
Cross-Context Debugging
Propagate trace context across bounded-context boundaries via HTTP and messaging, then debug a cross-service issue end-to-end.
Observability Economics
Control costs with tail sampling, cardinality limits, and OTel Collector pipelines tuned to your domain's signal-to-noise ratio.
Wrap-Up and Next Steps
Review what you built, discuss production readiness, and explore where to go from here.
Addendums
Deep dives for after the workshop or for experienced practitioners.