This documentation contains work-in-progress information for future Elastic Stack and Cloud releases. Use the version selector to view supported release docs. It also contains some Elastic Cloud serverless information. Check out our serverless docs for more details.
Python Agent version 2.x
editPython Agent version 2.x
editv2.2.0 - 2018/06/13
edit- introduced consistent logger name scheme for all elasticapm internal log messages #212
- added instrumentation of cassandra-driver #205
- added instrumentation of elasticsearch-py #191
- added Flask 1.0 to the test matrix #207
- fixed an issue with our minimalistic SQL parser and "fully qualified" table names #206
-
fixed issue with spans in Django’s
StreamingHTTPResponse
not being captured #201, #202 - fixed issue with spans with Flask’s streaming response not being captured #201, #202
NOTE: This will be the last release with support for Python 3.3.
v2.1.1 - 2018/04/09
editv2.1.0 - 2018/03/19
edit-
made skipping of initial
elasticapm
frames for span stack traces more generic #167 -
added
context.process.ppid
field (supported in apm-server 6.3+) #168 - added option to disable stack frame collection for very short spans #142
- several bug fixes:
- fix an issue in boto3 instrumentation with nonstandard endpoint URLs #178
- fix bug with OPTIONS requests and body capturing #174
-
fix issue when message has
%
character, but no params #175
v2.0.1 - 2018/02/15
editv2.0.0 - 2018/02/06
edit- moved the library-frame detection from a processor to the stacktrace collection #113.
- added settings to enable/disable source code collection and local variables collection for errors and transactions #117
-
added
service.environment
to provide an environment name (e.g. "production", "staging") #123 -
added
transaction.id
to errors to better correlate errors with transactions #122 -
added
transaction_sample_rate
to define a rate with which transactions are sampled #116 -
added
error.handled
to indicate if an exception was handled or not #124. -
added
transaction_max_spans
setting to limit the amount of spans that are recorded per transaction #127 - added configuration options to limit captured local variables to a certain length #130
- added options for configuring the amount of context lines that are captured with each frame #136
-
added support for tracing queries formatted as
psycopg2.sql.SQL
objects #148 -
switched to
time.perf_counter
as timing function on Python 3 #138 - added option to disable capturing of request body #151
- BREAKING: Several settings and APIs have been renamed (#111, #119, #143):
-
The decorator for custom instrumentation,
elasticapm.trace
, is nowelasticapm.capture_span
-
The setting
traces_send_frequency
has been renamed toflush_interval
. The name of the analogous environment variable changed fromELASTIC_APM_TRACES_SEND_FREQ
toELASTIC_APM_FLUSH_INTERVAL
-
The
app_name
setting has been renamed toservice_name
. The name of the analogous environment variable changed fromELASTIC_APM_APP_NAME
toELASTIC_APM_SERVICE_NAME
. -
app_name
arguments to API calls in the whole code base changed toservice_name
. -
The
app_version
setting has been renamed toservice_version
. The name of the analogous environment variable changed fromELASTIC_APM_APP_VERSION
toELASTIC_APM_SERVICE_VERSION
. -
context.request.url.raw
has been renamed tocontext.request.url.full
#121 -
BREAKING: added
elasticapm.set_custom_context
in favor of the more genericset_custom_data
function #133 -
BREAKING:
include_patterns
andexclude_patterns
now use shell globs instead of regular expressions, and are matched against the full path file path of the module, not against the module name #137 - BREAKING: renamed several configuration options to align better with other language agents #145:
-
disable_instrumentation
becameinstrument
and inverted its meaning -
max_event_queue_length
becamemax_queue_size
-
timeout
becameserver_timeout