Announcing Amazon Lightsail - January 2017 AWS Online Tech Talks
Announcing AWS X-Ray - January 2017 AWS Online Tech Talks
-
Upload
amazon-web-services -
Category
Technology
-
view
2.533 -
download
3
Transcript of Announcing AWS X-Ray - January 2017 AWS Online Tech Talks
![Page 1: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/1.jpg)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Abhishek K Singh, Principal Product Manager
Introduction to AWS X-RayOverview and Use Cases
1/16/2017
![Page 2: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/2.jpg)
What to expect from the session
Overview Concepts API Use cases Getting started
![Page 3: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/3.jpg)
Debugging applications
![Page 4: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/4.jpg)
Inventory
A development environment Search through logs for clues to reproduce the issue Set breakpoints in code to stop execution, and inspect variables and call stack Add additional log statements as necessary and redeploy application Repeat until the issue is fixed
Traditional debugging involves:
Traditional process of debugging doesn’t scale well to production applications or those built using a service-oriented, microservice, or serverless architecture
It’s tedious, repetitive, and time consuming
![Page 5: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/5.jpg)
Simple to develop Simple to test and debug Simple to deploy Simple to scale
Hard to iterate fast Hard to scale efficiently CI/CD time consuming and difficult Reliability challenges — a problem
with a single component can takedown the whole app
Monolithic vs. service-oriented applicationsApplications traditionally developed using a monolithic architectureBenefits: Drawbacks:
Move to service oriented (microservices) architecture to overcome the drawbacks of a monolithic application architecture
But microservices come with their own set of challenges
![Page 6: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/6.jpg)
Challenges
Services such as AWS Lambda, Amazon EC2 Container Service, AWS Elastic Beanstalk, AWS CloudFormation, etc. make it easier to deploy and manage applications consisting of hundreds of services
Deploying and managing service-oriented applications can be more work compared to monolithic applications
Still hard to debug application issues in production applications due to: Cross-service interactions Varying log formats across services Collecting, aggregating, and collating logs from services
![Page 7: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/7.jpg)
Identify performance bottlenecks and errors Pinpoint issues to specific service(s) in your application Identify impact of issues on users of the application Visualize the service call graph of your application
SolutionAWS X-Ray makes it easy to:
![Page 8: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/8.jpg)
How does X-Ray help?
![Page 9: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/9.jpg)
X-Ray service
![Page 10: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/10.jpg)
X-Ray SDK
Enables you to get started quickly without having to manually instrument your application code to log metadata about requests
Available for Java, .NET, and Node.jsAdds filters to automatically captures metadata for calls to: AWS services using the AWS SDK Non-AWS services over HTTP and HTTPS Databases (MySQL, PostgreSQL, and Amazon DynamoDB) Queues (Amazon SQS)
![Page 11: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/11.jpg)
X-Ray daemon
Receives data from the SDK over UDP and acts as a local buffer. Data is flushed to the backend every second or when the local buffer fills.
Available for Amazon Linux AMI, RHEL, Ubuntu, OS X, and Windows.
![Page 12: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/12.jpg)
Concepts
![Page 13: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/13.jpg)
X-Ray Concepts
Trace End-to-end data related a single request across services
Segments Portions of the trace that correspond to a single service
Sub-segments Remote call or local compute sections within a service
Annotations Business data that can be used to filter traces
Metadata Business data that can be added to the trace but not used for filtering traces
Errors Normalized error message and stack trace
Sampling Percentage of requests to your application to capture as traces
![Page 14: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/14.jpg)
Sampling configuration
{ "rules": { "move": { "id": 1, "service_name": "*", "http_method": "*", "url_path": "/api/move/*", "fixed_target": 0, "rate": 0.05 }, "base": { "id": 2, "service_name": "*", "http_method": "*", "url_path": "*", "fixed_target": 1, "rate": 0.1 } }}
This example defines two rules.
The first rule applies a five-percent sampling rate with no minimum number of requests to trace to requests with paths under /api/move
The second overrides the default sampling rule with a rule that traces the first request each second and 10 percent of additional requests.
![Page 15: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/15.jpg)
API
![Page 16: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/16.jpg)
X-Ray API
X-Ray provides a set of APIs to enable you to send, filter, and retrieve trace data
You can send trace data directly to the service without having to use our SDKs (i.e.: you can write your own SDKs for languages not currently supported)
Raw trace data is available using batch get APIs You can build your own data analysis applications on top of the
data collected by X-Ray
![Page 17: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/17.jpg)
X-Ray API
PutTraceSegments Uploads segment documents to AWS X-Ray
BatchGetTraces Retrieves a list of traces specified by ID
GetServiceGraph Retrieves a document that describes services in your application and their connections
GetTraceSummaries Retrieves IDs and metadata for traces available for a specified time frame using an optional filter
![Page 18: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/18.jpg)
Segment document
Minimal example{ "name" : "example.com", "id" : "70de5b6f19ff9a0a", "start_time" : 1.478293361271E9, "trace_id" : "1-581cf771-a006649127e371903a2de979", "end_time" : 1.478293361449E9}
Example showing an in-progress segment{ "name" : "example.com", "id" : "70de5b6f19ff9a0b", "start_time" : 1.478293361271E9, "trace_id" : "1-581cf771-a006649127e371903a2de979", “in_progress”: true}
![Page 19: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/19.jpg)
Use cases
![Page 20: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/20.jpg)
Visualize service call graph
![Page 21: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/21.jpg)
Identify impact
![Page 22: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/22.jpg)
Identify impact
![Page 23: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/23.jpg)
Identify performance bottlenecks
![Page 24: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/24.jpg)
Identify performance bottlenecks
![Page 25: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/25.jpg)
Identify performance bottlenecks
![Page 26: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/26.jpg)
Identify performance bottlenecks
![Page 27: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/27.jpg)
Pinpoint issues
![Page 28: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/28.jpg)
Pinpoint issues
![Page 29: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/29.jpg)
Pinpoint issues
![Page 30: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/30.jpg)
Getting started
![Page 31: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/31.jpg)
Agent installation (Amazon EC2 Linux)
![Page 32: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/32.jpg)
Agent Installation (Amazon EC2 Windows)
![Page 33: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/33.jpg)
Agent installation (Amazon ECS)
![Page 34: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/34.jpg)
Application instrumentation (Node.js)
//Add aws-xray-sdk package to package.json
var XRay = require('aws-xray-sdk');var AWS = captureAWS(require('aws-sdk'));…XRay.config([XRay.plugins.EC2]);XRay.captureHTTPs(http);XRay.setDefaultName('myfrontend-dev');…app.use(XRay.express.openSegment());app.get('/', function(req, res) { …});…app.use(XRay.express.closeSegment());
![Page 35: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/35.jpg)
Demo
![Page 36: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/36.jpg)
Pricing
![Page 37: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/37.jpg)
X-Ray pricingFree during the preview. After that:
Free tier The first 100,000 traces recorded per month are free The first 1,000,000 traces retrieved or scanned per month are free
Additional charges Beyond the free tier, traces recorded cost $5.00 per million per month Beyond the free tier, traces retrieved or scanned cost $0.50 per million per month
![Page 38: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/38.jpg)
Available in preview
Go to https://aws.amazon.com/xray to sign up for the preview.
Documentation: http://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html
.NET Sample: https://github.com/awslabs/aws-xray-dotnet-webapp Java Sample: https://github.com/awslabs/eb-java-scorekeep/tree/xray Node.js Sample: https://github.com/awslabs/eb-node-express-sample/tree/xray
The AWS X-Ray service is available in preview today.
![Page 39: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/39.jpg)
Questions?
![Page 40: Announcing AWS X-Ray - January 2017 AWS Online Tech Talks](https://reader033.fdocuments.in/reader033/viewer/2022061306/587d53b41a28abee158b5207/html5/thumbnails/40.jpg)
Thank you!