This tutorial covers observability of your Quarkus application by providing metrics, traces and logs using Open Telemetry.
Prerequisites
- Quarkus CLI (optional)
- Quarkus application
- Micrometer Open Telemetry
- Grafana LGTM Stack
- Java / Kotlin
- Gradle
Creating a new Quarkus project
The easiest way to create a Quarkus project locally is using the Quarkus CLI, which I'd usually install using SDKMan!.
quarkus create app dev.simonscholz:quarkus-otel --gradle-kotlin-dsl --kotlin --extensions=quarkus-config-yaml,opentelemetry,micrometer-opentelemetry,quarkus-rest-jackson,quarkus-observability-devservices,quarkus-flyway,quarkus-jdbc-postgresql,reactive-pg-client
To let quarkus handle the Grafana LGTM stack you can manually add the implementation("io.quarkus:quarkus-observability-devservices-lgtm") to your build.gradle.kts file.
Alternatively you also can go to https://code.quarkus.io/ to create a new Quarkus project.
Feel free to add any extension you'd like.
Start the application
./gradlew qDev