- 01-logback-mdc - Logback/MDC with executors, project reactor and coroutines
- 02-logback-brave - Logback/MDC + OpenZipkin Brave with different flavors of concurrency
- 03-logback-otel - Logback/MDC + OpenTelemetry, again with different flavors of concurrency
- 04-spring-classic-simple - Spring MVC examples
- 05-spring-coroutines-simple - Spring WebFlux with coroutines
- 06-service-a - Service A is a simple service based on WebFlux/coroutines which calls Service B
- 06-service-b - Service B is another service based on WebFlux/coroutines which gets called by Service A
- compose.yml that runs Grafana, Loki, Tempo and Prometheus
- localhost:3000 is how you access Grafana
- Kotlin coroutine context propagation openzipkin/brave/issues/820
- Traceid and spanid wrong when using Kotlin Reactor Coroutines micrometer-metrics/tracing/issues/174
- Observation API does not support Baggage micrometer-metrics/tracing/issues/455 and micrometer-metrics/tracing/issues/563
- Better support for working with Observation from Kotlin micrometer-metrics/micrometer/issues/4754
- https://github.com/Kotlin/kotlinx.coroutines/tree/master/integration/kotlinx-coroutines-slf4j
- https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/as-context-element.html
- https://spring.io/blog/2023/03/28/context-propagation-with-project-reactor-1-the-basics/
- https://spring.io/blog/2023/03/29/context-propagation-with-project-reactor-2-the-bumpy-road-of-spring-cloud/
- https://spring.io/blog/2023/03/30/context-propagation-with-project-reactor-3-unified-bridging-between-reactive/
- https://opentelemetry.io/docs/languages/java/instrumentation/
- https://github.com/open-telemetry/opentelemetry-java/blob/main/sdk-extensions/autoconfigure/README.md
- io.opentelemetry.instrumentation:opentelemetry-logback-mdc-1.0
- io.opentelemetry:opentelemetry-extension-kotlin
- io.opentelemetry.instrumentation:opentelemetry-reactor-3.1