For those interested in the experimental workaround (which is not officially supported), I’d like to provide a bit of insight into the issue.
Part of the issue we face when attempting to instrument RQ with the Python agent is that RQ creates a separate process for each task to run in.
The Python agent works by lazily registering when the first transaction occurs. Registration can take up to a couple seconds to complete.
Because of the multiple processes that are created and the time it takes the agent to startup and register, using the Python agent with RQ wouldn’t work well if the tasks are very short and time critical. With the time it takes to register the agent, the minimum reporting period and the time needed to harvest data regarding the task, the worker process can exist for ~5 seconds. Without the Python agent, that time may be sub-second for a short job.
If you’re still interested in the experimental workaround after reading and understanding these caveats, let us know and we can open a support ticket on your behalf.