Skip to content

Node.js autoinstrumentation not working in Node.js 24 Lambda runtime #2034

@garysassano

Description

@garysassano

After upgrading to the new Node.js 24 Lambda runtime (announced here), OpenTelemetry autoinstrumentation has completely stopped working. The Lambda functions execute successfully, but no telemetry data is being collected or exported.

Environment

  • Lambda Runtime: nodejs24.x
  • ADOT Lambda Layer: arn:aws:lambda:eu-central-1:901920570463:layer:aws-otel-nodejs-arm64-ver-1-30-2:1

Expected Behavior

OpenTelemetry autoinstrumentation should continue to work with the Node.js 24 runtime, collecting and exporting traces, metrics, and logs as it did with previous Node.js runtimes (18.x, 20.x, 22.x).

Actual Behavior

After upgrading to nodejs24.x:

  • Lambda functions execute without errors
  • No telemetry data is collected
  • No traces appear in configured backends
  • Autoinstrumentation appears to be completely inactive

Steps to Reproduce

  1. Create a Lambda function with Node.js 24 runtime (nodejs24.x)
  2. Attach the OpenTelemetry Lambda layer
  3. Configure the required environment variables for autoinstrumentation
  4. Invoke the Lambda function
  5. Check the telemetry backend for traces/metrics - none appear

It's possible that changes in the runtime environment are causing compatibility issues with the current autoinstrumentation approach.

Possible Causes

  • Changes in Lambda initialization lifecycle
  • Module resolution changes in Node.js 24
  • AWS Lambda wrapper changes
  • Environment variable handling differences

Workaround

Currently no known workaround. Staying on Node.js 22.x runtime maintains autoinstrumentation functionality.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingjavascriptPull requests that update Javascript code

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions