New integrations
- Add support for Tornado web
4.0+
. Currently this integration is ignored by autopatching, but can be enabled viapatch_all(tornado=True)
(#204, docs -- thanks @ross for reviewing and testing the implementation)
Bugfixes
- [docs] Minor updates to our documentation (#239, #237, #242, #244 -- thanks @liubin @pahaz)
- [boto] Boto2 and Botocore integrations have safety check to prevent double patching (#240)
- [boto] Use frames directly without calling
getouterframes()
. This is a major improvement that reduces the impact of our tracing calls for Boto2 (#243 -- thanks @wackywendell) - [django] make
func_name
work with any callable and not only with functions (#195, #203 -- thanks @m0n5t3r)
Breaking change
- [elasticsearch] when importing
elasticsearch
before executingpatch_all()
, no traces are created. This patch changed where thePIN
object is attached, so you should update your instrumentation as described below (#238)
Migrate from 0.7.x to 0.8.0
- [elasticsearch] the PIN object was previously attached to the
elasticsearch
module while now it useselasticsearch.Transport
. If you were using thePin
to override some tracing settings, you must update your code from:
Pin.override(client, service='elasticsearch-traces')
to:
Pin.override(client.transport, service='elasticsearch-traces')
Internals update
- the Python traces logs and returns error when there is a communication issue with the APM Agent (#173)
- the
wrap()
tracer decorator can be extended by Python integrations when the usual approach is not suitable for the given execution context (#221)
Read the full changeset.