AWS X-Ray makes it easy for developers to analyze the behavior of their production, distributed applications with end-to-end tracing capabilities. You can use X-Ray to identify performance bottlenecks, edge case errors, and other hard to detect issues. X-Ray supports applications, either in development or in production, of any type or size, from simple asynchronous event calls and three-tier web applications to complex distributed applications built using a microservices architecture. This enables developers to quickly find and address problems in their applications and improve the experience for end users of their applications.

Get Started

Try AWS X-Ray for free

The AWS Free Tier includes 100,000 traces recorded each month and one million traces retrieved or scanned each month for free.

View AWS Free Tier Details »

Simple Setup

AWS X-Ray can be used with applications running on Amazon Elastic Compute Cloud (EC2), Amazon EC2 Container Service (Amazon ECS), AWS Lambda, AWS Elastic Beanstalk. It’s easy to get started with X-Ray. You just integrate the X-Ray SDK with your application and install the X-Ray agent. With AWS Elastic Beanstalk, you only have to integrate the X-Ray SDK with your application since the X-Ray agent is pre-installed on Elastic Beanstalk.  

End-to-End Tracing

AWS X-Ray provides an end-to-end, cross-service view of requests made to your application. It gives you an application-centric view of requests flowing through your application by aggregating the data gathered from individual services in your application into a single unit called a trace. You can use this trace to follow the path of an individual request as it passes through each service or tier in your application so that you can pinpoint where issues are occurring.

AWS Service and Database Integrations

AWS X-Ray supports applications running on Amazon Elastic Compute Cloud (Amazon EC2), Amazon EC2 Container Service (Amazon ECS), AWS Lambda, and AWS Elastic Beanstalk. The X-Ray SDK captures metadata for requests made to MySQL and PostgreSQL databases (self-hosted, Amazon RDS, Amazon Aurora), and Amazon DynamoDB. It also captures metadata for requests made to Amazon Simple Queue Service and Amazon Simple Notification Service.

Learn more about integrating X-Ray with other AWS services here.

Support for Multiple Languages

AWS X-Ray supports tracing for applications that are written in Node.js, Java, and .NET.

Request Sampling

You can set the trace sampling rate that is best suited for your production applications or applications in development. X-Ray continually traces requests made to your application and stores a sampling of the requests for your analysis. This provides you with the appropriate amount of data to make your analysis meaningful, while avoiding the overhead of storing and managing excessive data volume.

Service Map

AWS X-Ray creates a map of services used by your application with trace data that you can use to drill into specific services or issues. This provides a view of connections between services in your application and aggregated data for each service, including average latency and failure rates. You can create dependency trees, perform cross-availability zone or region call detections, and more.

AWS X-Ray Service Map
AWS X-Ray Service Map

(Click to enlarge)

AWS X-Ray Timeline View
AWS X-Ray Timeline View

(Click to enlarge)

Data Annotation and Filtering

AWS X-Ray allows you to visually detect node and edge latency distribution directly from the service map. You can quickly isolate outliers, graph pattern and trends, drill into traces and filter by built-in keys and custom annotations to better understand performance issues impacting your application and end users.

Data Annotation and Filtering

AWS X-Ray lets you add annotations to data emitted from specific components or services in your application. You can use this to append business-specific metadata that help you better diagnose issues. You can also view and filter data for traces by properties such as annotation value, average latencies, HTTP response status, timestamp, database table used, and more.

AWS X-Ray Trace View
AWS X-Ray Trace View

(Click to enlarge)

AWS X-Ray Filtering
AWS X-Ray Filtering

(Click to enlarge)

Console and Programmatic Access

You can use AWS X-Ray with the AWS Management Console, AWS CLI, and AWS SDKs. The X-Ray API lets you programmatically access the service so you can easily export trace data or ingest the data into your own tools and custom analytics dashboards.

Security

AWS X-Ray is integrated with AWS Identity and Access Management (IAM) so that you can control which users and resources have permission to access your traces and how.