Lambda observability used to mean gluing together CloudWatch and X-Ray, hand-managing OTel layers per runtime, and building dashboards from scratch per account and per region. And it drifted the moment someone redeployed without the layer.
Built on the serverless observability Lumigo pioneered, now part of Dash0, Dash0 brings full AWS Lambda support natively on OpenTelemetry: AWS account integration, CloudWatch metrics, Lambda instrumentation, payload capture, timeout detection, event payload, and end to end tracing across brokers.
A catalog of every function, before you instrument anything
Setup takes under five minutes via CloudFormation. No credentials are stored on Dash0's side. Once connected, every Lambda function across all your regions appears with invocation counts, error rates, duration, and cold starts pulled from CloudWatch.
Click any function for a full metrics breakdown and an invocation table filterable by result, duration, and memory usage. Its traces and logs are one click away.
Full traces for every invocation
Add the Dash0 Lambda Extension and every invocation produces a full trace. Spans are nested by call hierarchy with durations on a timeline, and the root span includes Lambda context: event source, cold start duration, and batch record count for event-driven triggers.
The extension is a single Lambda layer with three environment variables. Supports Python, Node.js, and Java. Add it directly from the Dash0 catalog, without touching code or managing layers manually. If a function is redeployed without the layer, Dash0 detects the drift and re-instruments automatically.
Event payloads
The hardest part of debugging a Lambda failure is usually finding what triggered it. The extension captures the full event that triggered the function and attaches it to the trace. You don't need to redeploy with extra logging and wait for the failure to reproduce, payload is already there.
Outgoing payloads are captured too: request parameters and response bodies for downstream AWS services the function calls. Sensitive values are masked by default, with configurable rules per payload type.
Full event chains across brokers
When a message moves through SQS, SNS, EventBridge, or Kinesis and triggers another function, that doesn't have to look like two disconnected traces on either side of the broker. Trace context propagates across all four, so a publish-and-trigger pair shows up as one connected trace, with each hop carrying its event source and batch record count. A fan-out through multiple brokers stays traceable end to end.
Synthetic traces for timeouts and OOM
When a function times out or runs out of memory, the runtime kills it before any trace can be emitted. CloudWatch logs the failure. That's usually all you get. The extension uses the Lambda Telemetry API to detect these failures and create a synthetic trace with the duration, trigger source, and context around the failure.
Connect your AWS account to get started. Layer ARNs and setup instructions are on the Dash0 Lambda Extension GitHub page.






