Reputation: 1074
What is the best way to integrate Sentry Performance Monitoring with an app build with Quarkus framework?
There is an ability to monitor app performance via Sentry, but their official doc only references their own client (agent). Though it mentions OpenTelemetry, but it does not explain how to stream data from third-party exporters, or whether it is possible at all. https://docs.sentry.io/platforms/java/guides/logback/performance/instrumentation/opentelemetry/
I see that there is an extension for Quarkus to support Sentry Logging. But it is only useful to catch errors and exceptions. https://quarkiverse.github.io/quarkiverse-docs/quarkus-logging-sentry/dev/index.html
I also see that there is an ability to add OpenTelemetry support to the app, but it says nothing regarding Sentry integration. https://quarkus.io/guides/opentelemetry
Does anybody have a clue how to join all of them together? Maybe I should consider to use another tool rather then Sentry to do performance monitoring?
Upvotes: 1
Views: 798
Reputation: 19665
Once you have OpenTelemetry traces and spans being generated following the Quarkus documentation you linked, you will then need to configure the Sentry SDK to export the OpenTelemetry traces to Sentry.
The documentation to do this is OpenTelemetry Support.
The basic concept is that either a Java agent sentry-opentelemetry-agent
is used to either automatically initialize both OpenTelemetry and Sentry, or the agent can be used to initialize OpenTelemetry and Sentry can be initialized manually with the instrumenter
option set to Instrumenter.OTEL
.
Alternatively, the docs also describe a way to manually initialize both OpenTelemetry and Sentry. OpenTelemetry is configured with a Sentry span processor and context propagator, and Sentry is initialized as above with the instrumenter
option.
Upvotes: 2