Releases: elastic/apm-agent-python
Releases · elastic/apm-agent-python
v6.1.0
Features
- Add global access to Client singleton object at
elasticapm.get_client()
(#1043) - Add
log_ecs_formatting
config option (#1058) (#1063) - Add instrumentation for httplib2 (#1031)
- Add better instrumentation for some AWS services (S3, SNS, DynamoDB) (#1054)
- Added beta support for collecting metrics from prometheus_client (#1083)
Bug fixes
- Fix for potential
capture_body: error
hang in Starlette/FastAPI (#1038) - Fix a rare error around processing stack frames (#1012)
- Fix for Starlette/FastAPI to correctly capture request bodies as strings (#1041)
- Fix transaction names for Starlette Mount routes (#1037)
- Fix for elastic excepthook arguments (#1050)
- Fix issue with remote configuration when resetting config values (#1068)
- Use a label for the elasticapm Django app that is compatible with Django 3.2 validation (#1064)
- Fix an issue with undefined routes in Starlette (#1076)
v6.0.0
Breaking changes
- Python 2.7 and 3.5 support has been deprecated. The Python agent now requires Python 3.6+ [#1021]
- No longer collecting body for
elasticsearch-py
update
anddelete_by_query
[#1013] - Align
sanitize_field_names
config with the
cross-agent spec.
If you are using a non-defaultsanitize_field_names
, surrounding each of your entries with stars (e.g.
*secret*
) will retain the old behavior. [#982] - Remove credit card sanitization for field values. This improves performance, and the security value of this check was
dubious anyway. [#982] - Remove HTTP querystring sanitization. This improves performance, and is meant to standardize behavior across the
agents, as defined in elastic/apm#334. [#982] - Remove
elasticapm.tag()
(deprecated since 5.0.0) [#1034]
Bug fixes
- Fix for GraphQL span spamming from scalar fields with required flag [#1015]
v5.10.1
v5.10.0
Features
- Implement "sample_rate" property for transactions and spans, and propagate through tracestate (#891)
- Add support for callbacks on config changes (#912)
- Override
sys.excepthook
to catch all exceptions (#943) - Implement
log_level
config (supports central config) (#946) - Implement
transaction_ignore_urls
config (supports central config) (#923) - Add public API to retrieve trace parent header (#956)
- Added support for cgroup memory metrics (#846)
Bug fixes
- Fix to collect the whole query body in
elasticsearch-py
(#940) - Fix for GraphQL transaction naming (#881)
- Ensure that query string max length is maintained after sanitization (#968)
- Adapted kubernetes kubepod regex for detecting kubernetes metadata (#958)
- Updated Starlette integration to use the route as transaction name if possible (#957)
v5.9.0
v5.8.1
v5.8.0
v5.7.0
Features
- capture number of affected rows for INSERT/UPDATE/DELETE SQL queries (#614)
- Added instrumentation for AsyncElasticsearch (#843)
Bug fixes
- Added error handling around frame processing in Django (#837)
- Limit SQL queries in context data to 10000 characters (#842)
- Omit the "sync" property on spans by default (#854)
- Update the pid/ppid in transport metadata when they change (#825)
- Added better error handling around closing the transport (#838)
- Fixed an issue with the django admin command not detecting misconfigured server urls (#855)
v5.6.0
New features
- Added
SERVICE_NODE_NAME
config [#592] - Added instrumentation support for
pymemcache
[#812] - Added new configuration options
enabled
andrecording
[#790]
Bug fixes
- Fixed an issue with metrics collection raising RuntimeErrors [#802]
- Fixed an issue with getting extended destination data from pymongo [#797]
- Fixed an issue with Tornado instrumentation when Tornado isn't the "main" framework [#813]
- Fixed an issue with streaming requests being consumed by the agent even if capture_body is disabled [#817]
Pending Deprecations
- Python 2.7 support will be dropped in version 6.0 of the agent.