SigNoz Cloud - This page is relevant for SigNoz Cloud editions.
Self-Host - This page is relevant for self-hosted SigNoz editions.

AWS Lambda

šŸ’” Tip

SigNoz Cloud users: You can also use the One-Click AWS Integration for automated setup with pre-built dashboards. See the comparison guide to choose the best approach.

SigNoz supports multiple ways to monitor AWS Lambda. This page helps you choose the right approach for logs, traces, and metrics, then links to detailed setup guides.

Quick Decision Guide

What you needRecommended MethodWhy
Logs (lower latency, no code changes)OTel Collector Extension LayerTelemetry API integration, lower latency than S3, no code changes
Logs (from existing S3 pipelines)S3 Lambda ForwarderReuses existing S3 log storage, no changes to Lambda functions
Traces (auto-instrumentation)OTel Lambda LayersLanguage-specific layers capture traces without code changes
Metrics (manual, low cost)CloudWatch ExporterScrapes CloudWatch metrics with minimal AWS cost
Logs & Metrics (fastest setup, Cloud only)One-Click IntegrationAuto-discovery, pre-built dashboards, ~5 minute setup

Logs: OTel Extension vs S3

OTel Collector Extension Layer

Architecture diagram showing Lambda function sending logs via Telemetry API to OTel Collector Extension Layer, then forwarding to SigNoz via OTLP
OTel Collector Extension Layer flow for Lambda logs

The OTel Collector runs as a Lambda extension and registers with Lambda's Telemetry API to receive logs automatically. No function code changes required.

Benefits:

  • āœ… No code changes to your Lambda function
  • āœ… Direct integration via Lambda Telemetry API — no CloudWatch required
  • āœ… Lower latency than S3 for high-traffic functions
  • āœ… Minimal AWS cost (Lambda extension overhead only)

Trade-offs:

  • āŒ Requires adding a Lambda layer and a collector config file
  • āŒ Logs are buffered — sent at the start of the next invocation or during function shutdown, not immediately after each invocation. For short-lived or low-traffic functions, expect visible lag.
FeatureDetails
SetupAdd layer + config file
Code ChangesNone
LatencyNext invocation or shutdown (buffered)
AWS CostMinimal (Lambda extension overhead only)
Best ForMost use cases

→ Logs via OTel Extension Layer

S3 Forwarder

Architecture diagram showing Lambda logs flowing through CloudWatch to S3, then triggered Lambda forwarder sends to SigNoz
S3-based log forwarding flow for Lambda logs

Lambda logs flow through CloudWatch Logs to an S3 bucket. A forwarder Lambda function is triggered on new objects and sends them to SigNoz. Use this when you already have a CloudWatch → S3 log archival pipeline.

Benefits:

  • āœ… No code changes to your Lambda function
  • āœ… Reuses existing S3 log storage and pipelines
  • āœ… Decoupled from function execution — delivery failures don't affect your function

Trade-offs:

  • āŒ Higher latency — delivery depends on CloudWatch → S3 export interval
  • āŒ Additional AWS cost for S3 storage and forwarder Lambda invocations
  • āŒ Requires setting up a separate forwarder Lambda function
FeatureDetails
SetupLambda function + S3 bucket
Code ChangesNone
LatencyDelayed (depends on S3 sync)
AWS CostS3 storage + Lambda invocations
Best ForExisting S3 log pipelines

→ Logs via S3


Traces: OTel Auto-Instrumentation

Add language-specific OTel layers to your Lambda function to automatically capture traces without code changes.

Architecture diagram showing Lambda function with OTel auto-instrumentation layer sending traces through OTel Collector layer to SigNoz
OTel auto-instrumentation flow for Lambda traces

Benefits:

  • āœ… No code changes — instrumentation happens via Lambda layers
  • āœ… Automatically captures invocation spans and outbound HTTP calls
  • āœ… Forwards traces through a separate OTel Collector layer — function response time is not blocked

Trade-offs:

  • āŒ Adds cold start latency from layer initialization
  • āŒ Custom spans require manual instrumentation
  • āŒ Trace-log correlation requires additional setup (OTel SDK logging in your function code)

Supported languages: Python, Node.js, Java, Ruby

→ APM & Tracing Guide


Metrics: CloudWatch Exporter

Scrape Lambda metrics (Invocations, Errors, Duration, Throttles) from CloudWatch using the Prometheus CloudWatch Exporter.

Benefits:

  • āœ… No changes to Lambda functions
  • āœ… Covers standard Lambda metrics out of the box
  • āœ… Minimal AWS cost — reads from CloudWatch, no additional data streams

Trade-offs:

  • āŒ Polling-based — not real-time; metrics lag by the scrape interval
  • āŒ Requires running a CloudWatch Exporter instance

→ Metrics Guide


One-Click vs Manual

FeatureOne-Click IntegrationManual Setup
AvailabilitySigNoz Cloud onlyCloud & Self-Hosted
Setup Time~5 minutes15-60 minutes
Pre-built Dashboardsāœ… IncludedāŒ Build your own
Auto-Discoveryāœ… New resources detectedāŒ Manual configuration
AWS CostCloudWatch + Firehose chargesMinimal
Granular ControlLimitedFull control
Best ForQuick start, managed experienceCost optimization, self-hosted

See the full One-Click vs Manual comparison for details.


Combining Approaches

Many teams use a mix:

  • One-Click for metrics and pre-built dashboards
  • OTel Extension Layer for lower-latency logs
  • OTel Auto-Instrumentation for distributed traces

All data flows into the same SigNoz instance and can be queried together.

Last updated: April 1, 2026

Edit on GitHub

Was this page helpful?

Your response helps us improve this page.