AWS X-Ray Documentation
AWS X-Ray is designed to 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.
AWS X-Ray can be used with applications running on Amazon Elastic Compute Cloud (Amazon EC2), Amazon Elastic 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.
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 to help you pinpoint where issues are occurring.
AWS Service and Database Integrations
AWS X-Ray supports applications running on Amazon EC2, Amazon ECS, AWS Lambda, and AWS Elastic Beanstalk. The X-Ray SDK is designed to capture metadata for requests made to MySQL and PostgreSQL databases (self-hosted, Amazon RDS, Amazon Aurora), and Amazon DynamoDB. It is also designed to capture metadata for requests made to Amazon Simple Queue Service and Amazon Simple Notification Service.
Support for Multiple Languages
AWS X-Ray supports tracing for applications that are written in Node.js, Java, and .NET.
You can set the trace sampling rate that is best suited for your production applications or applications in development. X-Ray is designed to continually trace requests made to your application and stores a sampling of the requests for your analysis. This provides you with the appropriate amount of data designed to make your analysis meaningful, while avoiding the overhead of storing and managing excessive data volume.
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.
Server- and Client-side latency detection
AWS X-Ray helps 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.
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 export trace data or ingest the data into your own tools and custom analytics dashboards.
AWS X-Ray is integrated with AWS Identity and Access Management (IAM) to help you configure which users and resources have permission to access your traces and how.
For additional information about service controls, security features and functionalities, including, as applicable, information about storing, retrieving, modifying, restricting, and deleting data, please see https://docs.aws.amazon.com/index.html. This additional information does not form part of the Documentation for purposes of the AWS Customer Agreement available at http://aws.amazon.com/agreement, or other agreement between you and AWS governing your use of AWS’s services.