Documentation about how to monitor background processes
willianantunes opened this issue · 3 comments
Is your feature request related to a problem? Please describe.
No article or guide describes how to instrument a job, consumer, or anything related. The competition has a document called monitor background processes and other non-web transactions, but none is available on Dynatrace. We've been trying to configure a consumer past few weeks without success. Our scenario:
- Python 3.8.
- Django 4.1.
- Background process through Django Management Command.
- A consumer that uses STOMP protocol to communicate with RabbitMQ through stomp.py (analogous to pika).
Describe the solution you'd like
An official documentation from Dynatrace.
If we come up with a solution through this issue, I can write a blog post informing others how to monitor, including a complete project to download. People can use it as an example.
Describe alternatives you've considered
We're considering changing the company's ecosystem with more than 100 applications to the competition because what we're doing does not work.
Additional context
The following project has everything to mimic our scenario by running a Kubernetes locally:
https://github.com/MatheusGeiger/django-with-instrumentation
We have an open-source project with OpenTelemetry. It works like a charm, but the full set of features is not available. Dynatrace support recommended to use the SDK, so we had to abandon our library and focus on autodynatrace instead 😞.
https://github.com/juntossomosmais/opentelemetry-instrumentation-django-stomp
We've been trying to configure a consumer past few weeks without success.
If you have concrete issues, please open a support case.
In general, monitoring a background process should not be much different from a normal process. Just note that short-running processes do not work great with OneAgent and monitoring these might result in some trace data being incomplete. Assuming your consumer-process receives messages repeatedly, you would initialize the SDK once at process startup/initialization and then repeatedly use messaging process tracers as described in https://github.com/Dynatrace/OneAgent-SDK-for-Python#messaging
If you think your scenario should work with autodynatrace out of the box, please open an issue at that repository.
If you have concrete issues, please open a support case.
We did it. We've been talking with support since the beginning of the last month. We had progress, but we are running out of time 😞.
If you think your scenario should work with autodynatrace out of the box, please open an issue at that repository.
If someone looks at this thread, you can follow up here.
Closing, moved to autodynatrace