I alread read your blog entry https://www.dynatrace.com/news/blog/from-monitoring-to-software-intelligence-for-flask-applications but still have a few question regarding monitoring python with the Dynatrace OneAgent.
1. Why is the agent not able to inject into the Python Application by itself, like it does for .NET, Java etc.?
2. Is it planned to support automatic injection into Python and if so, can you maybe name a release date? Changes to the code are always ... meh.
I was really surprised when someone told me, that AppDynamics has a Python Agent which is able to monitor every request of a python app to the method level including db calls without any code changes. I couldn't belive this because Dynatrace and the provided features are always better than AppD in my opinion. But yeah that seems to be true and I'm wondering if you guys are planning something similar as well.
Edit: for clarification purposes - AppDynamics needs a library and a pyagend which needs to be started with the application. It is not like the Dynatrace OneAgent automatic injection for e.g. JAVA but works without changing the code.
Answer by David L. ·
AppDynamics DOES NOT automatically inject into python processes, you have to install the library and instrument the app. https://docs.appdynamics.com/display/PRO45/Install+the+Python+Agent, they even suggest you run a 'pyagent' wrapper around your application.
We are working on easier/automated instrumentation, for now there are some interesting projects like https://github.com/dlopes7/autodynatrace that significantly reduce the effort to instrument your code.
Answer by Alexandre M. ·
+1 ! It would be great ... I discovered today dynatrace didn't support auto instrumentation of Python (like PHP/.NET).
Even Instana is able to instrument Python out of the box, I can't believe Dynatrace is not able to do it ! (https://www.instana.com/blog/zero-effort-fully-automatic-distributed-tracing-for-python/ )
Is this something planned ? Any EAP coming ? (I really hope so :))