AWS Lambda telemetry exporter changelog
Every release of the Coralogix AWS Lambda telemetry exporter and of the coralogix-*-wrapper-and-exporter-* auto-instrumentation layers that bundle it, newest first. Use it to work out which version you are running, what changed since, and whether an upgrade is worth taking.
Each entry lists the layer versions published with that release. A layer appears only when it was rebuilt, so a release that updates the Node.js wrapper alone leaves the exporter, Python, and Java layer numbers where the previous release left them.
To look up the ARN for a layer version, or to move a function to a newer one, see AWS Lambda telemetry exporter. For the wrapper layers that add tracing, see AWS Lambda auto-instrumentation.
Node.js wrapper layer 42
Layers: Node.js wrapper 42.
- Updated the upstream OpenTelemetry libraries:
instrumentation-dnsv0.65.0,instrumentation-expressv0.70.0,instrumentation-graphqlv0.70.0,instrumentation-grpcv0.222.0,instrumentation-hapiv0.68.0,instrumentation-httpv0.222.0,instrumentation-ioredisv0.70.0,instrumentation-koav0.70.0,instrumentation-mongodbv0.75.0,instrumentation-mysqlv0.68.0,instrumentation-netv0.66.0,instrumentation-pgv0.74.0,instrumentation-redisv0.70.0,instrumentation-aws-sdkv0.77.0. - Added support for Node.js 26.
- Dropped support for Node.js 20.
Node.js wrapper layer 37
Layers: Node.js wrapper 37.
- Updated the upstream OpenTelemetry libraries:
instrumentation-dnsv0.59.0,instrumentation-expressv0.64.0,instrumentation-graphqlv0.64.0,instrumentation-grpcv0.216.0,instrumentation-hapiv0.62.0,instrumentation-httpv0.216.0,instrumentation-ioredisv0.64.0,instrumentation-koav0.64.0,instrumentation-mongodbv0.73.0,instrumentation-mysqlv0.62.0,instrumentation-netv0.60.0,instrumentation-pgv0.68.0,instrumentation-redisv0.64.0,instrumentation-aws-sdkv0.75.0.
Python, Node.js, and Java wrapper layers
Layers: Python wrapper 32, Node.js wrapper 36, Java wrapper 18.
- Java: added support for the DynamoDB, Cognito, EventBridge, SNS, Kinesis, and Step Functions triggers.
- Node.js: added support for the SNS and Kinesis triggers.
- Python: updated the instrumentation packages to
v0.63.0: instrumentation-aiohttp-client, util-http, instrumentation-asgi, instrumentation-boto, instrumentation-asyncpg, instrumentation-celery, instrumentation-dbapi, instrumentation-django, instrumentation-elasticsearch, instrumentation-fastapi, instrumentation-falcon, instrumentation-flask, instrumentation-grpc, instrumentation-jinja2, instrumentation-mysql, instrumentation-psycopg2, instrumentation-pymemcache, instrumentation-pymongo, instrumentation-pymysql, instrumentation-pyramid, instrumentation-redis, instrumentation-requests, instrumentation-sqlalchemy, instrumentation-sqlite3, instrumentation-starlette, instrumentation-tornado, instrumentation-wsgi. - Node.js: updated the upstream OpenTelemetry libraries:
instrumentation-dnsv0.59.0,instrumentation-expressv0.64.0,instrumentation-graphqlv0.64.0,instrumentation-grpcv0.216.0,instrumentation-hapiv0.62.0,instrumentation-httpv0.216.0,instrumentation-ioredisv0.64.0,instrumentation-koav0.64.0,instrumentation-mongodbv0.73.0,instrumentation-mysqlv0.62.0,instrumentation-netv0.60.0,instrumentation-pgv0.68.0,instrumentation-redisv0.64.0,instrumentation-aws-sdkv0.75.0. - Java: updated the SDK to
2.28.0, including aws-lambda-events and aws-sdk. - Inspected and patched the SDK libraries so that they work in FIPS environments.
Node.js wrapper layer 31
Layers: Node.js wrapper 31.
- Added support for Node.js 24.
- Updated the upstream OpenTelemetry libraries:
instrumentation-dnsv0.43.1,instrumentation-expressv0.47.1,instrumentation-graphqlv0.47.1,instrumentation-grpcv0.57.2,instrumentation-hapiv0.45.1,instrumentation-httpv0.57.2,instrumentation-ioredisv0.47.1,instrumentation-koav0.47.1,instrumentation-mongodbv0.61.0,instrumentation-mysqlv0.45.1,instrumentation-netv0.43.1,instrumentation-pgv0.51.1,instrumentation-redisv0.46.1,instrumentation-aws-sdkv0.64.0.
Exporter 1.2.1
Layers: exporter 38, Python wrapper 29, Node.js wrapper 30, Java wrapper 17.
- Updated the libraries used by the telemetry exporter.
- Optimized the Node.js layer size.
- Node.js: updated the upstream OpenTelemetry libraries:
instrumentation-dnsv0.43.1,instrumentation-expressv0.47.1,instrumentation-graphqlv0.47.1,instrumentation-grpcv0.57.2,instrumentation-hapiv0.45.1,instrumentation-httpv0.57.2,instrumentation-ioredisv0.47.1,instrumentation-koav0.47.1,instrumentation-mongodbv0.61.0,instrumentation-mysqlv0.45.1,instrumentation-netv0.43.1,instrumentation-pgv0.51.1,instrumentation-redisv0.46.1,instrumentation-aws-sdkv0.64.0.
Node.js wrapper layer 29
Layers: Node.js wrapper 29.
- Added support for the Step Functions trigger.
- Updated the upstream OpenTelemetry libraries:
instrumentation-dnsv0.43.1,instrumentation-expressv0.47.1,instrumentation-graphqlv0.47.1,instrumentation-grpcv0.57.2,instrumentation-hapiv0.45.1,instrumentation-httpv0.57.2,instrumentation-ioredisv0.47.1,instrumentation-koav0.47.1,instrumentation-mongodbv0.52.0,instrumentation-mysqlv0.45.1,instrumentation-netv0.43.1,instrumentation-pgv0.51.1,instrumentation-redisv0.46.1,instrumentation-aws-sdkv0.49.1.
Python wrapper layer 26
Layers: Python wrapper 26.
- Fixed an unhandled exception when
PutObjectis called with a non-ASCII payload.
Exporter 1.2.0
Layers: exporter 37, Python wrapper 25, Node.js wrapper 28, Java wrapper 16.
- Added a new way of sending telemetry, with logs, traces, and metrics sent in one request (
CX_COMBINED_TELEMETRY_ENABLED=true). - Limited the errors for which a retry of sending telemetry is attempted.
- Node.js: fixed support for SNS trigger span links.
- Python: fixed broken SQS trigger span links.
Exporter 1.1.0
Layers: exporter 36, Python wrapper 24, Node.js wrapper 27, Java wrapper 15.
- Added fine-tuning of the OpenTelemetry resource attributes and of
cx_metadata:CX_LOGS_METADATA_INCLUDE_TRACE_REFtoggles the presence ofcx_metadata.span_idandcx_metadata.trace_idin logs.CX_LOGS_METADATA_INCLUDE_EXECUTIONtoggles the presence ofcx_metadata.executionin logs.CX_LOGS_METADATA_INCLUDE_INVOCATION_IDtoggles the presence ofcx_metadata.invocation_idin logs, an alternative tocx_metadata.execution.CX_*RESOURCE_BUILT_IN_ATTRIBUTEScontrols which built-in attributes are included in the resource attributes incx_metadata.CX_*RESOURCE_EXTRA_ATTRIBUTESadds extra, user-defined attributes.
- Added trimming of platform event logs:
CX_PLATFORM_LOGS_INCLUDE_REQUEST_IDtoggles the presence ofrequest_idin the event body. You may want to disable it, because the value is also present ascx_metadata.execution_id.CX_PLATFORM_LOGS_HIDE_DEFAULT_VALUEShides the event log fields that are only populated in rare cases, such as failures or cold starts, unless they carry useful information.
- Renamed
CX_LOG_METADATA_ENABLEDtoCX_LOGS_METADATA_ENABLED. The old name remains supported. - Added the option to send part of your telemetry to an OpenTelemetry URL while the rest goes to Firehose.
- Added support for Node.js 22 and Python 3.13.
- Dropped Python 3.8 and .NET 6 from the list of supported runtimes to fit the limit of 15. The telemetry exporter continues to work with these runtimes.
- Python: avoided a crash when a list is provided to the botocore instrumentation.
Python, Node.js, and Java wrapper layers
Layers: Python wrapper 23, Node.js wrapper 26, Java wrapper 14.
- Python: added Python 3.13 as a supported runtime, and updated the instrumentation packages to
v0.52.0b. - Node.js: updated the core instrumentation to
v1.30.5and the Lambda instrumentation package tov0.50.3. Cold starts are now identified and reported in thefaas.coldstartattribute. - Java: updated the instrumentation packages to
v1.33.6.
Exporter 1.0.1
Layers: exporter 35, Python wrapper 20, Node.js wrapper 25, Java wrapper 13.
- Made Firehose errors more verbose.
Exporter 1.0.0
Layers: exporter 34, Python wrapper 19, Node.js wrapper 24, Java wrapper 12.
- Ensured that the OTLP server sockets are open before the extension registers with AWS.
Exporter 0.9.2
Layers: exporter 33, Python wrapper 18, Node.js wrapper 23, Java wrapper 11.
- Introduced
CX_PLATFORM_LOGS, which you can use to selectively disable platform event logs.
Exporter 0.9.1
Layers: exporter 32, Python wrapper 17, Node.js wrapper 22, Java wrapper 10.
- Enabled warming up of the OpenTelemetry exporters with special spans.
Exporter 0.9.0
Layers: exporter 31, Python wrapper 16, Node.js wrapper 21, Java wrapper 9.
- Fixed a
GLIBCissue with the arm64 layer. - Fixed an issue with handling spans received after the
runtime_doneevent. - ALPN is now disabled by default, assuming HTTP/2 support, when sending telemetry to Coralogix or to
CX_OTEL_URL. Re-enable it withCX_OTEL_APLN_ENABLED=t. - Upgraded to the hyper v1 and tonic v0.12 libraries.
- The layers are now also published in the
ap-southeast-5AWS region.
Exporter 0.8.0
Layers: exporter 30, Python wrapper 15, Node.js wrapper 19, Java wrapper 8.
- Added detection of out-of-memory conditions based on the
Runtime.OutOfMemoryerror type. - Added
CX_OTEL_LOGS_URL,CX_OTEL_TRACES_URL, andCX_OTEL_METRICS_URL, so you can send one pillar of telemetry to a different destination, for example a central OpenTelemetry collector, while the rest goes directly to Coralogix.
Exporter 0.7.0
Layers: exporter 29, Python wrapper 14, Node.js wrapper 14, Java wrapper 7.
- Introduced early spans, which create meaningful trigger and invocation spans when a function times out or otherwise crashes, cases that normally prevent the delivery of spans from OpenTelemetry instrumentation. Initialization failures are not included.
- Introduced processing of OpenTelemetry metrics to reduce the volume of metrics sent to Coralogix, by including only the data that is a meaningful update. Disable it with
CX_OTEL_METRICS_MODE=direct. - Fixed out-of-memory detection when memory usage is higher than the limit.
Exporter 0.6.5
Layers: exporter 28, Python wrapper 13, Node.js wrapper 12, Java wrapper 6.
- Fixed an issue where spans with
kind=consumerwere not recognized as the main function span.
Exporter 0.6.4
Layers: exporter 27, Python wrapper 12, Node.js wrapper 11, Java wrapper 5.
- Added
CX_SERVICE_NAME, which you can use to customize the service name. The default is the function's name.
Exporter 0.6.3
Layers: exporter 26, Python and Node.js wrapper 8, Java wrapper 3.
- Fixed an issue where
CX_TRACING_MODE=disabledandCX_TRACING_MODE=telemetry_apipropagated OpenTelemetry traces to Coralogix. OnlyCX_TRACING_MODE=otelshould do that.
Exporter 0.6.2
Layers: exporter 25, Python and Node.js wrapper 7, Java wrapper 2.
- Fixed an issue with truncating logs that contain multi-byte UTF-8 characters.
Exporter 0.6.1
Layers: exporter 24, Python and Node.js wrapper 6, Java wrapper 1.
- Renamed
CX_PRIVATE_KEYtoCX_API_KEY. The old name remains supported. - Fixed an incorrect warning about missing spans.
Exporter 0.6.0
Layers: exporter 23, Python and Node.js wrapper 5.
- Added the option to load your Coralogix API key from AWS Secrets Manager (
CX_SECRET). - Redesigned the algorithm for sending telemetry to Coralogix, to improve the reliability of telemetry delivery on shutdown, including Lambda timeouts.
Exporter 0.5.2
Layers: exporter 22, Python and Node.js wrapper 4.
- The exporter can now filter span attributes to remove sensitive data such as authentication headers (
CX_EXCLUDED_SPAN_ATTRIBUTES). - You no longer need to set
CX_TRACING_MODE=otelwhen using a*-wrapper-and-exporter-*layer. The exporter detects that OpenTelemetry instrumentation is present and chooses that mode itself. - The exporter now sends function spans, meaning spans coming from OpenTelemetry instrumentation, to Coralogix early when there are many of them. This matters for functions that produce tens of thousands of spans per invocation.
- Improved behavior under heavy workload.
- Improved behavior during Lambda shutdown, including extended debug logging.
- Fixed an issue where logs produced by background threads of the function after the handler completed were not processed and delivered to Coralogix.
Exporter 0.5.1
Layers: exporter 21, Python and Node.js wrapper 3.
- Added an
out_of_memoryfield to the report log. - Improved the debug logs emitted when function instrumentation does not produce spans as expected.
- Improved the parsing of X-Ray IDs.
- The
telemetry.sdk.languageattribute is now propagated, which results in better span icons in the Coralogix UI.
Exporter 0.5.0
Layers: exporter 20, Python and Node.js wrapper 2.
- Experimental: added the ability to send telemetry to Firehose.
- Added configuration options to selectively disable logs, traces, or metrics.
- The exporter no longer crashes the Lambda function on a misconfiguration, and tries not to crash it on other fatal failures.
- Fixed function handler failure detection.
- Improved startup performance by skipping initialization of the AWS SDK when the related features, tags and Firehose, are not in use.
- Updated OTLP to version 1.0.0.
- Improved the debug logs.
- Improved the creation of the initialization span, which is now created correctly when function initialization fails and when OpenTelemetry instrumentation fails.
- Improved the reporting of metrics on fatal failures of the Lambda runtime.
- Improved the handling of
application_nameandsubsystem_namewhen function initialization fails.
Exporter 0.4.4
Layers: exporter 18.
- Fixed the parsing of GovCloud ARNs.