How to Instrument AWS Services with OpenTelemetry

This page summarizes the projects mentioned and recommended in the original post on dev.to

SurveyJS - JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor
Keep full control over the data you collect and tailor the form builder’s entire look and feel to your users’ needs. SurveyJS works with React, Angular, Vue 3, and is compatible with any backend or auth system. Learn more.
surveyjs.io
featured
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video.
Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
getstream.io
featured
  1. opentelemetry-examples

    In the example code for this blog, I also added an AWS api gateway so we can trigger the Lambda using a public URL. That is out of scope for this blog, but you can visit the source code and check it out.

  2. SurveyJS

    JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor. Keep full control over the data you collect and tailor the form builder’s entire look and feel to your users’ needs. SurveyJS works with React, Angular, Vue 3, and is compatible with any backend or auth system. Learn more.

    SurveyJS logo
  3. sqs-consumer

    Build Amazon Simple Queue Service (SQS) based applications without the boilerplate

    To receive the messages from the queue, we will use the sqs-consumer library. The service will receive messages describing newly created orders. After some processing, it will change the order status in the table to ‘completed’.

  4. opentelemetry-js-contrib

    OpenTelemetry instrumentation for JavaScript modules

    @opentelemetry/instrumentation-aws-lambda

  5. opentelemetry-lambda

    Create your own Lambda Layer in each OTel language using this starter code. Add the Lambda Layer to your Lambda Function to get tracing with OpenTelemetry.

    You don’t have to create an opentelemetry configuration file such as this for each of your lambdas. In fact, you shouldn’t. In AWS, you can use Lambda Layers. You can define the OpenTelemetry tracing piece of code as a Lambda layer and use it in any Lambda you want. Furthermore, OpenTelemetry went ahead and implemented this opentelemetry-lambda layer for us. All we need to do is use it with our config.

  6. opentelemetry-specification

    Specifications for OpenTelemetry

    According to the opentelemetry specification for messaging systems, When a process receives messages in a batch it is impossible for this process to determine the parent span for the span that it is currently creating.

  7. opentelemetry-ext-js

    Discontinued js extensions for the open-telemetry project

    AWS has good tools for tracing, but in this example, I will use another remote and distributed tracing platform – Aspecto.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Instrumenting AWS Lambda functions with OpenTelemetry SDKs

    4 projects | dev.to | 25 Nov 2023
  • Trace-based Testing AWS Lambda with Tracetest, ECS Fargate, and Terraform

    8 projects | dev.to | 7 Jul 2023
  • Serverless Adapter - Run APIs in serverless environments in clouds like AWS and Huawei

    1 project | /r/javascript | 20 Jun 2022
  • Itty-AWS: 34KB AWS SDK for Effect

    1 project | news.ycombinator.com | 13 Jul 2025
  • Orchestrating Multi-Agents: Unifying Fragmented Tools into Coordinated Workflows

    1 project | dev.to | 29 Jun 2025

Did you know that TypeScript is
the 1st most popular programming language
based on number of references?