Notes
This release of the Python agent is a bug fix release that addresses several outstanding issues. In addition, the agent's instrumentation for the Pyramid web framework was updated to handle changes introduced in version 1.7 of Pyramid.
The agent can be installed using easy_install/pip/distribute via the Python Package Index or can be downloaded directly from our download site.
For a list of known issues with the Python agent, see Status of the Python agent.
New Feature
Support for Pyramid 1.7
In version 1.7 of the Pyramid web framework, the
ViewDeriver
class was removed and replaced with a custom view pipeline, composed with view derivers. This required a change to where the agent applied it's instrumentation, since we were previously instrumenting theViewDeriver
class.
Bug Fixes
Gevent and Python 3.4+
When running the agent with
gevent
in Python 3.4+, the agent would throw anAttributeError
when accessing the_sleep
attribute in thethreading
module, which was removed in Python 3.4. The agent now handles this properly.Possible missing application exceptions in APM Error Analytics
Using the
record_exception()
API, it is possible to record an exception against the application, but outside of a transaction. If there was a time window in which no transaction exceptions were recorded, but only application exceptions were recorded, then no exceptions would be displayed when viewing that time window in APM Error Analytics. With this release, application exceptions show up as expected, whether or not transaction exceptions were also recorded.CherryPyWSGIServer and keyword arguments
Previously, the agent would fail to instrument
CherryPyWSGIServer
correctly when it was initialized using keyword arguments. That is now handled correctly.Missing attributes in Transaction Events
In version 2.60.0.46 of the agent, two response header attributes were renamed, but they were not added to Transaction Events as they should have been.
response.headers.contentLength
response.headers.contentType
These attributes are now included in Transaction Events.
Changed Feature
Capture port for all HTTP requests to External Services
Prior to this release, the agent would capture the port for HTTP requests to external services for only some of the HTTP libraries that the agent instruments. Notably, the port was missing when using these libraries directly:
httplib
,httplib2
, andurllib3
. The agent now captures the port for these libraries.