Releases: elastic/apm-agent-python
v3.0.1
- added sanitization for
Set-Cookie
response headers (#264) - added instrumentation for the non-standard
Connection.execute()
method for SQLite3 (#271) - added "authorization" to list of sensitive keywords, to ensure that "Authorization"
HTTP headers are properly sanitized (#275) - taught the Logbook handler how to handle the
stack=False
option (#278) - fixed a race condition with managing the timer-send thread (#279)
v3.0.0
- adapted "black" code formatter for this repository (#262)
- BREAKING: dropped support for Python 3.3 (#242)
- BREAKING: changed order of precedence when evaluating configuration (#255, #261)
- BREAKING: changed default value of
span_frames_min_duration
setting
from-1
(always collect) to5
(only collect for spans longer than 5 ms) (#243) - added instrumentation for pymssql (#241)
- added instrumentation for pyodbc (#238)
v2.2.1
v2.2.0
- 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
v2.1.0
v2.0.1
v2.0.0
-
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)
- The decorator for custom instrumentation,
-
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 meaningmax_event_queue_length
becamemax_queue_size
timeout
becameserver_timeout
v1.0.0
v1.0.0.dev3
- added a background thread to process the transactions queue every 60 seconds (configurable) (#68)
- adapted trace context for SQL traces to new API (#77)
- ensured that transaction data is also passed through processors (#84)
- added
uninstrument
function to reverse instrumentation,
and exposed bothinstrument
anduninstrument
as public API in theelasticapm
namespace (#90) - added normalization of HTTP status codes into classes for the
transaction.result
field. A HTTP status of200
will be turned intoHTTP 2xx
. The unchanged status code is still available incontext.response.status_code
.
(#85)