This release of the Python agent includes bug fixes.
AIOHTTP http client urls displayed as unknown.url when using YARL URLs
When passing a YARL url object to the aiohttp client, the agent did not properly parse this URL, resulting in unknown.url being displayed in the UI. The URL is now parsed correctly in both the YARL url case and the string url case.
Data may not be recorded when tornado's RequestHandler.finish
Using RequestHandler.finish in tornado caused the transaction to exit before all traces (inserted by automatic instrumentation) were complete, resulting in missing data. All traces now exit when RequestHandler.finish is called.
asyncio.ensure_future / asyncio.create_task is unable to spawn new transactions
Calling asyncio.create_task / asyncio.ensure_future was unable to spawn a new transaction if these methods were called from within an existing transaction. New transactions can now be created when ensure_future/create_task is called from within an existing transaction and no traces have been started on the spawned task.
py3: A runtime instrumentation error may have occurred when transactions were finalized
When transactions became garbage (if the reference to the transaction was lost as part of a circular reference for example), a runtime instrumentation error may have been logged. The error conditions have been relaxed to allow for certain states within the agent when a transaction becomes garbage.
Application crash when starting a transaction when one is already active
Starting a transaction via the context manager APIs when a transaction is already active no longer causes an application crash. An error is logged when this case is detected.
Creating a message transaction with distributed tracing enabled may have resulted in a crash
The agent crashed with an AttributeError when using message transactions with distributed tracing enabled when headers were not provided. This error has been fixed.