<<Download>> Download Microsoft Word Course Outline Icon Word Version Download PDF Course Outline Icon PDF Version

Updated November 2026

Migrating from AWS X-Ray SDKs to OpenTelemetry

Class Duration

7 hours of live training delivered over 1 day.

Student Prerequisites

  • Software development experience in Java, Python, Node.js, .NET, or Go
  • Working knowledge of AWS Lambda, Amazon ECS, or Amazon EKS
  • Existing applications instrumented with the AWS X-Ray SDKs, or familiarity with X-Ray traces
  • No prior OpenTelemetry experience required

Target Audience

Developers, SREs, and platform engineers whose AWS services use the X-Ray SDKs or the X-Ray daemon. It also fits architects choosing between the X-Ray console, CloudWatch Application Signals, and third-party backends. For OpenTelemetry beyond AWS, see Observability with OpenTelemetry.

Description

AWS moved the X-Ray SDKs and the X-Ray daemon into maintenance mode on February 25, 2026, with security fixes only. AWS now recommends OpenTelemetry for instrumentation, while the X-Ray service stays as a trace backend. This one-day course walks through the migration, starting with how X-Ray concepts map to OpenTelemetry. Students replace X-Ray SDK calls with ADOT or upstream OpenTelemetry SDKs on Lambda, ECS, and EKS. The course closes with sampling, backend choices, and a verified cutover.

Learning Outcomes

  • Explain what changes and what stays when moving off the X-Ray SDKs.
  • Map X-Ray segments, annotations, and trace headers to OpenTelemetry concepts.
  • Choose between the CloudWatch agent, the OpenTelemetry Collector, and direct OTLP export.
  • Replace X-Ray SDK instrumentation with ADOT or upstream OpenTelemetry SDKs.
  • Instrument Lambda functions with the AWS Lambda Layer for OpenTelemetry.
  • Migrate ECS tasks and EKS workloads off the X-Ray daemon.
  • Carry X-Ray sampling rules forward with the X-Ray remote sampler.
  • Choose a trace backend for migrated services.
  • Verify trace continuity and cut over safely.
  • Remove the X-Ray SDKs and daemon after cutover.

Training Materials

Comprehensive courseware is distributed online at the start of class. All students receive a downloadable MP4 recording of the training.

Software Requirements

Students will need a free, personal GitHub account to access the courseware, an AWS account with permissions for Lambda, ECS or EKS, CloudWatch, X-Ray, and IAM, the AWS CLI v2, Docker Desktop or Podman, a code editor (VS Code recommended), and a development environment for at least one of Java, Python, Node.js, .NET, or Go.

Training Topics

Why Migrate

  • Maintenance mode for the X-Ray SDKs and daemon
  • What stays the same in X-Ray
  • What changes in instrumentation and collection
  • OpenTelemetry signals beyond traces
  • Planning by service, runtime, and platform

OpenTelemetry for X-Ray Users

  • Segments and subsegments vs. spans
  • Annotations and metadata vs. attributes
  • Resource attributes
  • X-Ray trace IDs and the X-Ray propagator
  • W3C Trace Context
  • Keeping traces connected during migration
  • ADOT vs. upstream OpenTelemetry

Target Architectures

  • The CloudWatch agent as an OpenTelemetry collector
  • The OpenTelemetry Collector with the X-Ray exporter
  • Direct OTLP export to the X-Ray endpoint
  • CloudWatch Transaction Search
  • SigV4 authentication and IAM permissions

Replacing X-Ray SDK Instrumentation

  • ADOT auto-instrumentation
  • Upstream OpenTelemetry SDKs, including Go
  • AWS per-language migration guides
  • Replacing manual segments and annotations
  • Instrumenting AWS SDK, HTTP, and database calls
  • Removing X-Ray SDK dependencies

AWS Lambda

  • The AWS Lambda Layer for OpenTelemetry
  • The exec wrapper
  • Tracing-only mode vs. Application Signals
  • Lambda active tracing
  • ADOT Lambda layers with an embedded collector
  • Go functions with the OpenTelemetry Go SDK
  • Cold starts and package size

Amazon ECS

  • Replacing the X-Ray daemon sidecar
  • The CloudWatch agent on ECS
  • Sidecar vs. daemon on EC2 and Fargate
  • Task roles for telemetry export
  • Collector images instead of the CloudWatch agent

Amazon EKS

  • The Amazon CloudWatch Observability EKS add-on
  • Application Signals and Container Insights
  • The ADOT EKS add-on
  • OpenTelemetry Operator auto-instrumentation
  • Replacing the X-Ray daemon DaemonSet
  • EKS Pod Identity or IRSA for collectors

Sampling

  • X-Ray sampling rules with the remote sampler
  • Proxying sampling requests through a collector
  • X-Ray adaptive sampling
  • Sampling boost and anomaly span capture
  • Head-based vs. tail-based sampling
  • Transaction Search indexing costs

Choosing a Backend

  • The X-Ray console and CloudWatch traces
  • CloudWatch Application Signals
  • Service maps, metrics, and SLOs
  • Third-party OpenTelemetry backends
  • Sending to multiple backends
  • Span ingestion, indexing, and retention costs

Verification and Cutover

  • Comparing traces before and after migration
  • Checking trace continuity across mixed services
  • Updating dashboards, alarms, and runbooks
  • Rollback options
  • Decommissioning the X-Ray SDKs and daemon
<<Download>> Download Microsoft Word Course Outline Icon Word Version Download PDF Course Outline Icon PDF Version