Open antonpirker opened 3 months ago
Example traces for both scenarios:
Things that I noticed:
Missing Instrumentation
block in Otel trace)trigger_notifications
(the Celery task) in otel spans (which is cool), but there is not much in it.One thing of note: Database spans in OTel include a special structured comment that includes tracing and other information:
OTel database spans also include information about the HTTP server they where running in:
Instrument a Django application once with Sentry and once with Sentry using OpenTelementry for span creation. We want to compare the span waterfalls, to see the differences and what needs to be done to have feature parity.
Test setup:
Application: https://github.com/getsentry/demo-movie-search/tree/main/backend/django A request to the
/api/shows/{pk}/
API endpoint will do:This resembles a common setup in production Django applications, that is used all over the planet.
Scenario 1) Sentry:
This will load Sentries integrations (like Django, Celery, ...) by default and those Sentry integrations will create spans. Opentelementry is not used.
Scenario 2) Sentry using OpenTelementry:
This will disable all Sentry span creation and spans will only be created by the OpenTelemetry SDK.