Python Agent version 6.xedit

6.9.1 - 2022-03-30edit

Bug fixesedit
  • Fix otel_attributes-related regression with older versions of APM Server (<7.16) #1510

6.9.0 - 2022-03-29edit

Featuresedit
  • Add OpenTelemetry API bridge #1411
  • Change default for sanitize_field_names to sanitize *auth* instead of authorization #1494
  • Add span_stack_trace_min_duration to replace deprecated span_frames_min_duration #1498
  • Enable exact_match span compression by default #1504
  • Allow parent celery tasks to specify the downstream parent_span_id in celery headers #1500
Bug fixesedit
  • Fix Sanic integration to properly respect the capture_body config #1485
  • Lambda fixes to align with the cross-agent spec #1489
  • Lambda fix for custom service_name #1493
  • Change default for stack_trace_limit from 500 to 50 #1492
  • Switch all duration handling to use datetime.timedelta objects #1488

6.8.1 - 2022-03-09edit

Bug fixesedit
  • Fix exit_span_min_duration and disable by default #1483

6.8.0 - 2022-02-22edit

Featuresedit
  • use "unknown-python-service" as default service name if no service name is configured #1438
  • add transaction name to error objects #1441
  • don’t send unsampled transactions to APM Server 8.0+ #1442
  • implement snapshotting of certain configuration during transaction lifetime #1431
  • propagate traceparent IDs via Celery #1371
  • removed Python 2 compatibility shims #1463

    • Note: Python 2 support was already removed with version 6.0 of the agent, this now removes unused compatibilit shims.
Bug fixesedit
  • fix span compression for redis, mongodb, cassandra and memcached #1444
  • fix recording of status_code for starlette #1466
  • fix aioredis span context handling #1462

6.7.2 - 2021-12-07edit

Bug fixesedit
  • fix AttributeError in sync instrumentation of httpx #1423
  • add setting to disable span compression, default to disabled #1429

6.7.1 - 2021-11-29edit

Bug fixesedit
  • fix an issue with Sanic exception tracking #1414
  • asyncpg: Limit SQL queries in context data to 10000 characters #1416

6.7.0 - 2021-11-17edit

Featuresedit
  • Add support for Sanic framework #1390
Bug fixesedit
  • fix compatibility issues with httpx 0.21 #1403
  • fix span_compression_exact_match_max_duration default value #1407

6.6.3 - 2021-11-15edit

Bug fixesedit
  • fix an issue with metrics_sets configuration referencing the TransactionMetricSet removed in 6.6.2 #1397

6.6.2 - 2021-11-10edit

Bug fixesedit
  • Fix an issue where compressed spans would count against transaction_max_spans #1377
  • Make sure HTTP connections are not re-used after a process fork #1374
  • Fix an issue with psycopg2 instrumentation when multiple hosts are defined #1386
  • Update the User-Agent header to the new spec #1378
  • Improve status_code handling in AWS Lambda integration #1382
  • Fix aiohttp exception handling to allow for non-500 responses including HTTPOk #1384
  • Force transaction names to strings #1389
Otheredit
  • Remove unused http.request.socket.encrypted context field #1332
  • Remove unused transaction metrics (APM Server handles these metrics instead) #1388

6.6.1 - 2021-11-02edit

Bug fixesedit
  • Fix some context fields and metadata handling in AWS Lambda support #1368

6.6.0 - 2021-10-18edit

Featuresedit
  • Add experimental support for AWS lambda instrumentation #1193
  • Add support for span compression #1321
  • Auto-infer destination resources for easier instrumentation of new resources #1359
  • Add support for dropped span statistics #1327
Bug fixesedit
  • Ensure that Prometheus histograms are encoded correctly for APM Server #1354
  • Remove problematic (and duplicate) event.dataset from logging integrations #1365
  • Fix for memcache instrumentation when configured with a unix socket #1357

6.5.0 - 2021-10-04edit

Featuresedit
  • Add instrumentation for Azure Storage (blob/table/fileshare) and Azure Queue #1316
Bug fixesedit
  • Improve span coverage for asyncpg #1328
  • aiohttp: Correctly pass custom client to tracing middleware #1345
  • Fixed an issue with httpx instrumentation #1337
  • Fixed an issue with Django 4.0 removing a private method #1347

6.4.0 - 2021-08-31edit

Featuresedit
  • Rename the experimental log_ecs_formatting config to log_ecs_reformatting #1300
  • Add support for Prometheus histograms #1165
Bug fixesedit
  • Fixed cookie sanitization when Cookie is capitalized #1301
  • Fix a bug with exception capturing for bad UUIDs #1304
  • Fix potential errors in json serialization #1203
  • Fix an issue with certain aioredis commands #1308

6.3.3 - 2021-07-14edit

Bug fixesedit
  • ensure that the elasticsearch instrumentation handles DroppedSpans correctly #1190

6.3.2 - 2021-07-07edit

Bug fixesedit
  • Fix handling of non-http scopes in Starlette/FastAPI middleware #1187

6.3.1 - 2021/07/07edit

Bug fixesedit
  • Fix issue with Starlette/FastAPI hanging on startup #1185

6.3.0 - 2021/07/06edit

Featuresedit
  • Add additional context information about elasticsearch client requests #1108
  • Add use_certifi config option to allow users to disable certifi #1163
Bug fixesedit
  • Fix for Starlette 0.15.0 error collection #1174
  • Fix for Starlette static files #1137

6.2.3 - 2021/06/28edit

Bug fixesedit
  • suppress the default_app_config attribute in Django 3.2+ #1155
  • bump log level for multiple set_client calls to WARNING #1164
  • fix issue with adding disttracing to SQS messages when dropping spans #1170

6.2.2 - 2021/06/07edit

Bug fixesedit
  • Fix an attribute access bug introduced in 6.2.0 #1149

6.2.1 - 2021/06/03edit

Bug fixesedit
  • catch and log exceptions in interval timer threads #1145

6.2.0 - 2021/05/31edit

Featuresedit
  • Added support for aioredis 1.x #2526
  • Added support for aiomysql #1107
  • Added Redis pub/sub instrumentation #1129
  • Added specific instrumentation for AWS SQS #1123
Bug fixesedit
  • ensure metrics are flushed before agent shutdown #1139
  • added safeguard for exceptions in processors #1138
  • ensure sockets are closed which were opened for cloud environment detection #1134

6.1.3 - 2021/04/28edit

Bug fixesedit
  • added destination information to asyncpg instrumentation #1115
  • fixed issue with collecting request meta data with Django REST Framework #1117
  • fixed httpx instrumentation for newly released httpx 0.18.0 #1118

6.1.2 - 2021/04/14edit

Bug fixesedit
  • fixed issue with empty transaction name for the root route with Django #1095
  • fixed on-the-fly initialisation of Flask apps #1099

v6.1.1 - 2021/04/08edit

Bug fixesedit
  • fixed a validation issue with the newly introduced instrumentation for S3, SNS and DynamoDB #1090

v6.1.0 - 2021/03/31edit

Featuresedit
  • 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 fixesedit
  • 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 - 2021/02/01edit

Breaking changesedit
  • 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 and delete_by_query #1013
  • Align sanitize_field_names config with the cross-agent spec. If you are using a non-default sanitize_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 https://github.com/elastic/apm/pull/334. #982
  • Remove elasticapm.tag() (deprecated since 5.0.0) #1034
Bug fixesedit
  • Fix for GraphQL span spamming from scalar fields with required flag #1015