dynatrace-oss / OneAgent-SDK-Python-AutoInstrumentation

autodynatrace, a python library that implements automatic instrumentation using the OneAgent SDK for Python
Other
62 stars 30 forks source link

Mongo using AsyncIOMotorClient does not seem to work #99

Closed 3x0dv5 closed 6 months ago

3x0dv5 commented 9 months ago

I wonder if anyone out there managed to get Dynatrace to work with AsyncIOMotorClient, like when we use Beanie. It seems that in the Listener the oneage.get_sdk().tracecontext_get_current() is always empty, it's like OneAgent loses track of the current trace context. Have you guys also seen this?

dlopes7 commented 6 months ago

@3x0dv5 I've added initial support for asyncio in 2.1.0, can you update and test?

Please make sure to also run the app with the environment variable

AUTODYNATRACE_INSTRUMENT_CONCURRENT=True

Because threads need to be instrumented for the correlation to work

3x0dv5 commented 6 months ago

The Dynatrace guys that support our organization said that this is not feasible and that we would need to look into use open telemetry. In https://github.com/Dynatrace/OneAgent-SDK-for-Python/issues/36 @Oberon00 mentions the same as the Dynatrace guys told me, the context is in a single thread.

In the meantime we put this on hold, I will come back to you once we resume the work on this space. Thanks!