How to build observability into a serverless application

Yan Cui
Yan CuiSpeaker at Self
how to build
Serverless
OBSERVABILITY
into a application
@theburningmonk theburningmonk.com
What do I mean by “observability”?
Monitoring
watching out for
known failure modes
in the system,
e.g. network I/O, CPU,
memory usage, …
@theburningmonk theburningmonk.com
Observability
being able to debug
the system, and gain
insights into the
system’s behaviour
@theburningmonk theburningmonk.com
In control theory, observability is a measure of how well
internal states of a system can be inferred from
knowledge of its external outputs.
https://en.wikipedia.org/wiki/Observability
@theburningmonk theburningmonk.com
In control theory, observability is a measure of how well
internal states of a system can be inferred from
knowledge of its external outputs.
https://en.wikipedia.org/wiki/Observability
including non-
functional outputs
@theburningmonk theburningmonk.com
These are the four pillars of the Observability Engineering
team’s charter:
• Monitoring
• Alerting/Visualization
• Distributed systems tracing infrastructure
• Log aggregation/analytics
“
” http://bit.ly/2DnjyuW- Observability Engineering at Twitter
@theburningmonk theburningmonk.com
microservices death stars circa 2015
@theburningmonk theburningmonk.com
microservices death stars circa 2015
mm… I wonder what’s
going on here…
How to build observability into a serverless application
How to build observability into a serverless application
How to build observability into a serverless application
How to build observability into a serverless application
@theburningmonk theburningmonk.com
microservices death stars circa 2015
I got this!
How to build observability into a serverless application
@theburningmonk theburningmonk.com
Yan Cui
http://theburningmonk.com
@theburningmonk
AWS user for 10 years
http://bit.ly/yubl-serverless
Yan Cui
http://theburningmonk.com
@theburningmonk
Developer Advocate @
How to build observability into a serverless application
Yan Cui
http://theburningmonk.com
@theburningmonk
Independent Consultant
advisetraining delivery
https://theburningmonk.com/courses
lambdabestpractice.com
theburningmonk.com/workshops
in your
company
flexible datesHelsinki, Aug 20-21 London, Sep 24-25 Berlin, Oct 8-9
4-week virtual workshop, May 4 - May 29
Amsterdam, Jul 7-8
new
challenges
@theburningmonk theburningmonk.com
NO ACCESS
to underlying OS
@theburningmonk theburningmonk.com
NOWHERE
to install agents/daemons
@theburningmonk theburningmonk.com
•nowhere to install agents/daemons
new challenges
@theburningmonk theburningmonk.com
user request
user request
user request
user request
user request
user request
user request
critical paths:
minimise user-facing latency
handler
handler
handler
handler
handler
handler
handler
@theburningmonk theburningmonk.com
user request
user request
user request
user request
user request
user request
user request
critical paths:
minimise user-facing latency
StatsD
handler
handler
handler
handler
handler
handler
handler
rsyslog
background processing:
batched, asynchronous, low
overhead
@theburningmonk theburningmonk.com
user request
user request
user request
user request
user request
user request
user request
critical paths:
minimise user-facing latency
StatsD
handler
handler
handler
handler
handler
handler
handler
rsyslog
background processing:
batched, asynchronous, low
overhead
NO background processing
except what platform provides
@theburningmonk theburningmonk.com
•no background processing
•nowhere to install agents/daemons
new challenges
@theburningmonk theburningmonk.com
EC2
concurrency used to be
handled by your code
@theburningmonk theburningmonk.com
EC2
Lambda
Lambda
Lambda
Lambda
Lambda
now, it’s handled by the
AWS Lambda platform
@theburningmonk theburningmonk.com
EC2
logs & metrics used to be
batched here
@theburningmonk theburningmonk.com
EC2
Lambda
Lambda
Lambda
Lambda
Lambda
now, they are batched in each
concurrent execution, at best…
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
HIGHER concurrency to log
aggregation/telemetry system
@theburningmonk theburningmonk.com
•higher concurrency to telemetry system
•nowhere to install agents/daemons
•no background processing
new challenges
@theburningmonk theburningmonk.com
Lambda
cold start
@theburningmonk theburningmonk.com
Lambda
data is batched between
invocations
@theburningmonk theburningmonk.com
Lambda
idle
data is batched between
invocations
@theburningmonk theburningmonk.com
Lambda
idle
garbage collectiondata is batched between
invocations
@theburningmonk theburningmonk.com
Lambda
idle
garbage collectiondata is batched between
invocations
HIGH chance of data loss
@theburningmonk theburningmonk.com
•high chance of data loss (if batching)
•nowhere to install agents/daemons
•no background processing
•higher concurrency to telemetry system
new challenges
@theburningmonk theburningmonk.com
Lambda
@theburningmonk theburningmonk.com
my code
send metrics
@theburningmonk theburningmonk.com
my code
send metrics
@theburningmonk theburningmonk.com
my code
send metrics
internet internet
press button something happens
How to build observability into a serverless application
@theburningmonk theburningmonk.com
http://bit.ly/2Dpidje
@theburningmonk theburningmonk.com
?
functions are often chained together
via asynchronous invocations
@theburningmonk theburningmonk.com
?
SNS
Kinesis
CloudWatch
Events
CloudWatch
LogsIoT
DynamoDB
S3 SES
@theburningmonk theburningmonk.com
?
SNS
Kinesis
CloudWatch
Events
CloudWatch
LogsIoT
DynamoDB
S3 SES
tracing ASYNCHRONOUS
invocations through so many
different event sources is difficult
@theburningmonk theburningmonk.com
•asynchronous invocations
•nowhere to install agents/daemons
•no background processing
•higher concurrency to telemetry system
•high chance of data loss (if batching)
new challenges
@theburningmonk theburningmonk.com
These are the four pillars of the Observability Engineering
team’s charter:
• Monitoring
• Alerting/Visualization
• Distributed systems tracing infrastructure
• Log aggregation/analytics
“
” http://bit.ly/2DnjyuW- Observability Engineering at Twitter
LOGGING
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
2016-07-12T12:24:37.571Z 994f18f9-482b-11e6-8668-53e4eab441ae
GOT is off air, what do I do now?
@theburningmonk theburningmonk.com
2016-07-12T12:24:37.571Z 994f18f9-482b-11e6-8668-53e4eab441ae
GOT is off air, what do I do now?
UTC Timestamp Request Id
your log message
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
one log group per
function
one log stream for each
concurrent invocation
@theburningmonk theburningmonk.com
logs are not easily searchable in
CloudWatch Logs
me
@theburningmonk theburningmonk.com
CloudWatch Logs
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
CloudWatch Logs is an async event source for Lambda
@theburningmonk theburningmonk.com
Concurrent Executions
Time
regional max
concurrency
functions that are
delivering business value
@theburningmonk theburningmonk.com
Concurrent Executions
Time
regional max
concurrency
functions that are
delivering business value
ship logs
@theburningmonk theburningmonk.com
either set concurrency limit on the log shipping function
(and potentially lose logs due to throttling)
or…
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
1 shard = 1 concurrent execution
i.e. control the no. of concurrent
executions with no. of shards
@theburningmonk theburningmonk.com
…
@theburningmonk theburningmonk.com
CloudWatch Logs
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
https://amzn.to/2DnREgn
@theburningmonk theburningmonk.com
https://amzn.to/2uZYmEw
@theburningmonk theburningmonk.com
use structured logging with JSON
@theburningmonk theburningmonk.com
https://stackify.com/what-is-structured-logging-and-why-developers-need-it/ https://blog.treasuredata.com/blog/2012/04/26/log-everything-as-json/
@theburningmonk theburningmonk.com
https://www.loggly.com/blog/8-handy-tips-consider-logging-json/
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
traditional loggers are too heavy for Lambda
@theburningmonk theburningmonk.com
https://github.com/getndazn/dazn-lambda-powertools
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
Writing lots more data to
CloudWatch Logs
@theburningmonk theburningmonk.com
CloudWatch Logs
$0.50 per GB ingested
$0.03 per GB archived per month
@theburningmonk theburningmonk.com
CloudWatch Logs
$0.50 per GB ingested
$0.03 per GB archived per month
1M invocation of a 128MB function =
$0.000000208 * 1M + $0.20 =
$0.408
@theburningmonk theburningmonk.com
DON’T leave debug logging ON in production
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
have to redeploy ALL the
functions along the call path to
collect all relevant debug logs
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
https://github.com/middyjs/middy
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
EC2
Lambda
Lambda
Lambda
Lambda
Lambda
Concurrency is handled by
the AWS Lambda platform
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
sampling decision has to be
followed by an entire call chain
@theburningmonk theburningmonk.com
Initial Request ID
User ID
Session ID
User-Agent
Order ID
…
@theburningmonk theburningmonk.com
EC2
Lambda
Lambda
Lambda
Lambda
Lambda
Concurrency is handled by
the AWS Lambda platform
@theburningmonk theburningmonk.com
store correlation IDs in global variable
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
use middleware to auto-capture incoming correlation IDs
@theburningmonk theburningmonk.com
extract correlation IDs from
invocation event, and store them in
the correlation-ids module
reset
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
logger to always include captured correlation IDs
@theburningmonk theburningmonk.com
HTTP and AWS SDK clients to auto-forward correlation IDs on
@theburningmonk theburningmonk.com
context.awsRequestId
get-index
@theburningmonk theburningmonk.com
context.awsRequestId x-correlation-id
get-index
@theburningmonk theburningmonk.com
{
“headers”: {
“x-correlation-id”: “…”
},
…
}
get-index
@theburningmonk theburningmonk.com
{
“body”: null,
“resource”: “/restaurants”,
“headers”: {
“x-correlation-id”: “…”
},
…
}
get-index get-restaurants
@theburningmonk theburningmonk.com
get-restaurants
global.CONTEXT
global.CONTEXT
x-correlation-id = …
x-correlation-xxx = …
get-index
headers[“User-Agent”]
headers[“Debug-Log-Enabled”]
headers[“User-Agent”]
headers[“Debug-Log-Enabled”]
headers[“x-correlation-id”]
capture
forward
function
event
log.info(…)
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
https://github.com/getndazn/dazn-lambda-powertools
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
MONITORING
How to build observability into a serverless application
@theburningmonk theburningmonk.com
•no background processing
•nowhere to install agents/daemons
new challenges
@theburningmonk theburningmonk.com
my code
send metrics
internet internet
press button something happens
@theburningmonk theburningmonk.com
those extra 10-20ms for
sending custom metrics would
compound when you have
microservices and multiple
APIs are called within one slice
of user event
@theburningmonk theburningmonk.com
Amazon found every 100ms of latency cost them 1% in sales.
http://bit.ly/2EXPfbA
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
https://aws.amazon.com/cloudwatch/pricing/
@theburningmonk theburningmonk.com
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html
@theburningmonk theburningmonk.com
https://aws.amazon.com/cloudwatch/pricing/
@theburningmonk theburningmonk.com
happened system repaireduser impact
reduce MTTR
@theburningmonk theburningmonk.com
Identify & Resolve
Issues
Understanding
costs
Visibility
@theburningmonk theburningmonk.com
Identify & Resolve
Issues
Understanding
costs
Visibility
@theburningmonk theburningmonk.com
happened system repaireduser impact
MTTDiscovery
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
“What alerts should I have?”
@theburningmonk theburningmonk.com
It depends on what you’re building…
@theburningmonk theburningmonk.com
But, this is a good starting point
@theburningmonk theburningmonk.com
Lambda
error rate %
throttle count
DLR error count
iterator age
regional concurrency
@theburningmonk theburningmonk.com
Lambda
error rate %
throttle count
DLR error count
iterator age
regional concurrency
API Gateway
p90/95/99 latency
success rate %
4xx rate %
5xx rate %
@theburningmonk theburningmonk.com
API Gateway
p90/95/99 latency
success rate %
4xx rate %
5xx rate %
SQS
message age
Lambda
error rate %
throttle count
DLR error count
iterator age
regional concurrency
@theburningmonk theburningmonk.com
API Gateway
p90/95/99 latency
success rate %
4xx rate %
5xx rate %
SQS
message age
Step Functions
failed count
throttle count
timed out count
Lambda
error rate %
throttle count
DLR error count
iterator age
regional concurrency
@theburningmonk theburningmonk.com
SQS
message age
Step Functions
failed count
throttle count
timed out count
API Gateway
p90/95/99 latency
success rate %
4xx rate %
5xx rate %
Lambda
error rate %
throttle count
DLR error count
iterator age
regional concurrency
@theburningmonk theburningmonk.com
monitor and alert on message flow rate for
event processing pipelines
@theburningmonk theburningmonk.com
“Can’t you codify these?”
@theburningmonk theburningmonk.com
@theburningmonk theburningmonk.com
TRACING
X-Ray
How to build observability into a serverless application
How to build observability into a serverless application
How to build observability into a serverless application
poor support for async
invocations
good for identifying dependencies of a function,
but not good enough for tracing the entire call
chain as user request/data flows through the
system via async event sources.
don’t span over non-AWS services
How to build observability into a serverless application
How to build observability into a serverless application
write structured logs
instrument your code
make it easy to do the right thing
https://theburningmonk.com/hire-me
AdviseTraining Delivery
“Fundamentally, Yan has improved our team by increasing our
ability to derive value from AWS and Lambda in particular.”
Nick Blair
Tech Lead
@theburningmonk theburningmonk.com
Production-Ready Serverless
theburningmonk.com/workshops
in your
company
flexible datesHelsinki, Aug 20-21 London, Sep 24-25 Berlin, Oct 8-9
4-week virtual workshop, May 4 - May 29
Amsterdam, Jul 7-8
@theburningmonk theburningmonk.com
smartly-2020
€100 off all my workshops
@theburningmonk theburningmonk.com
lambdabestpractice.com bit.ly/complete-guide-to-aws-step-functions
smartly-2020
20% off my courses
@theburningmonk
theburningmonk.com
github.com/theburningmonk
1 of 171

Recommended

Build a social network in 4 weeks with Serverless and GraphQL by
Build a social network in 4 weeks with Serverless and GraphQLBuild a social network in 4 weeks with Serverless and GraphQL
Build a social network in 4 weeks with Serverless and GraphQLYan Cui
333 views129 slides
Amazon EKS - security best practices - 2022 by
Amazon EKS - security best practices - 2022 Amazon EKS - security best practices - 2022
Amazon EKS - security best practices - 2022 Jean-François LOMBARDO
388 views32 slides
Building a social network in under 4 weeks with Serverless and GraphQL by
Building a social network in under 4 weeks with Serverless and GraphQLBuilding a social network in under 4 weeks with Serverless and GraphQL
Building a social network in under 4 weeks with Serverless and GraphQLYan Cui
1.1K views153 slides
Introduzione ad Amazon EKS by
Introduzione ad Amazon EKSIntroduzione ad Amazon EKS
Introduzione ad Amazon EKSAmazon Web Services
1K views25 slides
Implementing Bullet-Proof HIPAA Solutions on AWS (SEC306) | AWS re:Invent 2013 by
Implementing Bullet-Proof HIPAA Solutions on AWS (SEC306) | AWS re:Invent 2013Implementing Bullet-Proof HIPAA Solutions on AWS (SEC306) | AWS re:Invent 2013
Implementing Bullet-Proof HIPAA Solutions on AWS (SEC306) | AWS re:Invent 2013Amazon Web Services
5.1K views38 slides
AWS Partner Webcast - Use Your AWS CloudTrail Data and Splunk Software To Imp... by
AWS Partner Webcast - Use Your AWS CloudTrail Data and Splunk Software To Imp...AWS Partner Webcast - Use Your AWS CloudTrail Data and Splunk Software To Imp...
AWS Partner Webcast - Use Your AWS CloudTrail Data and Splunk Software To Imp...Amazon Web Services
4.3K views38 slides

More Related Content

What's hot

Building a Hyper Secure VPC on AWS with Puppet by
Building a Hyper Secure VPC on AWS with PuppetBuilding a Hyper Secure VPC on AWS with Puppet
Building a Hyper Secure VPC on AWS with PuppetTim Nolet
1.2K views48 slides
Secure Your AWS Account and Your Organization's Accounts - SID202 - Chicago A... by
Secure Your AWS Account and Your Organization's Accounts - SID202 - Chicago A...Secure Your AWS Account and Your Organization's Accounts - SID202 - Chicago A...
Secure Your AWS Account and Your Organization's Accounts - SID202 - Chicago A...Amazon Web Services
687 views100 slides
Managing Security with AWS | AWS Public Sector Summit 2017 by
Managing Security with AWS | AWS Public Sector Summit 2017Managing Security with AWS | AWS Public Sector Summit 2017
Managing Security with AWS | AWS Public Sector Summit 2017Amazon Web Services
774 views64 slides
AWS re:Inforce 2019 - Threat Hunting in CloudTrail & GuardDuty by
AWS re:Inforce 2019 - Threat Hunting in CloudTrail & GuardDutyAWS re:Inforce 2019 - Threat Hunting in CloudTrail & GuardDuty
AWS re:Inforce 2019 - Threat Hunting in CloudTrail & GuardDutyChris Farris
804 views33 slides
Serverless security: defense against the dark arts by
Serverless security: defense against the dark artsServerless security: defense against the dark arts
Serverless security: defense against the dark artsYan Cui
1.7K views182 slides
Aptible, AWS, and Telepharm: Architecting HIPAA compliance for the cloud by
Aptible, AWS, and Telepharm: Architecting HIPAA compliance for the cloudAptible, AWS, and Telepharm: Architecting HIPAA compliance for the cloud
Aptible, AWS, and Telepharm: Architecting HIPAA compliance for the cloudAptible
1.1K views85 slides

What's hot(20)

Building a Hyper Secure VPC on AWS with Puppet by Tim Nolet
Building a Hyper Secure VPC on AWS with PuppetBuilding a Hyper Secure VPC on AWS with Puppet
Building a Hyper Secure VPC on AWS with Puppet
Tim Nolet1.2K views
Secure Your AWS Account and Your Organization's Accounts - SID202 - Chicago A... by Amazon Web Services
Secure Your AWS Account and Your Organization's Accounts - SID202 - Chicago A...Secure Your AWS Account and Your Organization's Accounts - SID202 - Chicago A...
Secure Your AWS Account and Your Organization's Accounts - SID202 - Chicago A...
Managing Security with AWS | AWS Public Sector Summit 2017 by Amazon Web Services
Managing Security with AWS | AWS Public Sector Summit 2017Managing Security with AWS | AWS Public Sector Summit 2017
Managing Security with AWS | AWS Public Sector Summit 2017
AWS re:Inforce 2019 - Threat Hunting in CloudTrail & GuardDuty by Chris Farris
AWS re:Inforce 2019 - Threat Hunting in CloudTrail & GuardDutyAWS re:Inforce 2019 - Threat Hunting in CloudTrail & GuardDuty
AWS re:Inforce 2019 - Threat Hunting in CloudTrail & GuardDuty
Chris Farris804 views
Serverless security: defense against the dark arts by Yan Cui
Serverless security: defense against the dark artsServerless security: defense against the dark arts
Serverless security: defense against the dark arts
Yan Cui1.7K views
Aptible, AWS, and Telepharm: Architecting HIPAA compliance for the cloud by Aptible
Aptible, AWS, and Telepharm: Architecting HIPAA compliance for the cloudAptible, AWS, and Telepharm: Architecting HIPAA compliance for the cloud
Aptible, AWS, and Telepharm: Architecting HIPAA compliance for the cloud
Aptible1.1K views
Putting it All Together: Securing Systems at Cloud Scale by Amazon Web Services
Putting it All Together: Securing Systems at Cloud ScalePutting it All Together: Securing Systems at Cloud Scale
Putting it All Together: Securing Systems at Cloud Scale
Amazon Web Services1.7K views
Cloud Security: Attacking The Metadata Service v2 by Puma Security, LLC
Cloud Security: Attacking The Metadata Service v2Cloud Security: Attacking The Metadata Service v2
Cloud Security: Attacking The Metadata Service v2
Puma Security, LLC307 views
AWS Security: A Practitioner's Perspective by Jason Chan
AWS Security: A Practitioner's PerspectiveAWS Security: A Practitioner's Perspective
AWS Security: A Practitioner's Perspective
Jason Chan4K views
(SEC404) Incident Response in the Cloud | AWS re:Invent 2014 by Amazon Web Services
(SEC404) Incident Response in the Cloud | AWS re:Invent 2014(SEC404) Incident Response in the Cloud | AWS re:Invent 2014
(SEC404) Incident Response in the Cloud | AWS re:Invent 2014
Amazon Web Services12.2K views
Securing your cloud perimeter with azure network security brk3185 by jtaylor707
Securing your cloud perimeter with azure network security brk3185Securing your cloud perimeter with azure network security brk3185
Securing your cloud perimeter with azure network security brk3185
jtaylor707234 views
stackArmor Security MicroSummit - AWS Security with Splunk by Gaurav "GP" Pal
stackArmor Security MicroSummit - AWS Security with SplunkstackArmor Security MicroSummit - AWS Security with Splunk
stackArmor Security MicroSummit - AWS Security with Splunk
Gaurav "GP" Pal610 views
AWS 201 - A Walk through the AWS Cloud: AWS Security Best Practices by Amazon Web Services
AWS 201 - A Walk through the AWS Cloud: AWS Security Best PracticesAWS 201 - A Walk through the AWS Cloud: AWS Security Best Practices
AWS 201 - A Walk through the AWS Cloud: AWS Security Best Practices
CI/CD Pipeline Security: Advanced Continuous Delivery Recommendations by Amazon Web Services
CI/CD Pipeline Security: Advanced Continuous Delivery RecommendationsCI/CD Pipeline Security: Advanced Continuous Delivery Recommendations
CI/CD Pipeline Security: Advanced Continuous Delivery Recommendations
Amazon Web Services2.9K views
AWS Re:Invent - Securing HIPAA Compliant Apps in AWS by Control Group
AWS Re:Invent - Securing HIPAA Compliant Apps in AWSAWS Re:Invent - Securing HIPAA Compliant Apps in AWS
AWS Re:Invent - Securing HIPAA Compliant Apps in AWS
Control Group1.7K views
Advanced Security Best Practices Masterclass by Amazon Web Services
Advanced Security Best Practices MasterclassAdvanced Security Best Practices Masterclass
Advanced Security Best Practices Masterclass
Amazon Web Services12.8K views
Aws container webinar day 2 by HoseokSeo7
Aws container webinar day 2Aws container webinar day 2
Aws container webinar day 2
HoseokSeo7140 views
Using Security to Build with Confidence in AWS by Amazon Web Services
Using Security to Build with Confidence in AWSUsing Security to Build with Confidence in AWS
Using Security to Build with Confidence in AWS
Amazon Web Services1.5K views

Similar to How to build observability into a serverless application

Serverless observability - a hero's perspective by
Serverless observability - a hero's perspectiveServerless observability - a hero's perspective
Serverless observability - a hero's perspectiveYan Cui
385 views118 slides
Beware the potholes on the road to serverless by
Beware the potholes on the road to serverlessBeware the potholes on the road to serverless
Beware the potholes on the road to serverlessYan Cui
865 views200 slides
Essential open source tools for serverless developers by
Essential open source tools for serverless developersEssential open source tools for serverless developers
Essential open source tools for serverless developersYan Cui
692 views135 slides
Patterns and practices for building resilient Serverless applications by
Patterns and practices for building resilient Serverless applicationsPatterns and practices for building resilient Serverless applications
Patterns and practices for building resilient Serverless applicationsYan Cui
1.4K views229 slides
AWS Lambda from the trenches by
AWS Lambda from the trenchesAWS Lambda from the trenches
AWS Lambda from the trenchesYan Cui
5.3K views200 slides
Serverless in production, an experience report (BuildStuff) by
Serverless in production, an experience report (BuildStuff)Serverless in production, an experience report (BuildStuff)
Serverless in production, an experience report (BuildStuff)Yan Cui
763 views217 slides

Similar to How to build observability into a serverless application(20)

Serverless observability - a hero's perspective by Yan Cui
Serverless observability - a hero's perspectiveServerless observability - a hero's perspective
Serverless observability - a hero's perspective
Yan Cui385 views
Beware the potholes on the road to serverless by Yan Cui
Beware the potholes on the road to serverlessBeware the potholes on the road to serverless
Beware the potholes on the road to serverless
Yan Cui865 views
Essential open source tools for serverless developers by Yan Cui
Essential open source tools for serverless developersEssential open source tools for serverless developers
Essential open source tools for serverless developers
Yan Cui692 views
Patterns and practices for building resilient Serverless applications by Yan Cui
Patterns and practices for building resilient Serverless applicationsPatterns and practices for building resilient Serverless applications
Patterns and practices for building resilient Serverless applications
Yan Cui1.4K views
AWS Lambda from the trenches by Yan Cui
AWS Lambda from the trenchesAWS Lambda from the trenches
AWS Lambda from the trenches
Yan Cui5.3K views
Serverless in production, an experience report (BuildStuff) by Yan Cui
Serverless in production, an experience report (BuildStuff)Serverless in production, an experience report (BuildStuff)
Serverless in production, an experience report (BuildStuff)
Yan Cui763 views
Serverless in production, an experience report (microservices london) by Yan Cui
Serverless in production, an experience report (microservices london)Serverless in production, an experience report (microservices london)
Serverless in production, an experience report (microservices london)
Yan Cui387 views
Serverless in production, an experience report (NDC London 2018) by Yan Cui
Serverless in production, an experience report (NDC London 2018)Serverless in production, an experience report (NDC London 2018)
Serverless in production, an experience report (NDC London 2018)
Yan Cui614 views
Serverless in production, an experience report (NDC London, 31 Jan 2018) by Domas Lasauskas
Serverless in production, an experience report (NDC London, 31 Jan 2018)Serverless in production, an experience report (NDC London, 31 Jan 2018)
Serverless in production, an experience report (NDC London, 31 Jan 2018)
Domas Lasauskas54 views
Serverless in production, an experience report (London js community) by Yan Cui
Serverless in production, an experience report (London js community)Serverless in production, an experience report (London js community)
Serverless in production, an experience report (London js community)
Yan Cui476 views
Build social network in 4 weeks by Yan Cui
Build social network in 4 weeksBuild social network in 4 weeks
Build social network in 4 weeks
Yan Cui642 views
Serverless gives you wings by Yan Cui
Serverless gives you wingsServerless gives you wings
Serverless gives you wings
Yan Cui1.6K views
Beware the potholes on the road to serverless by Yan Cui
Beware the potholes on the road to serverlessBeware the potholes on the road to serverless
Beware the potholes on the road to serverless
Yan Cui692 views
Building Advanced Serverless Workflows with AWS Step Functions | AWS Floor28 by Amazon Web Services
Building Advanced Serverless Workflows with AWS Step Functions | AWS Floor28Building Advanced Serverless Workflows with AWS Step Functions | AWS Floor28
Building Advanced Serverless Workflows with AWS Step Functions | AWS Floor28
Amazon Web Services1.8K views
Building a social network in under 4 weeks with Serverless and GraphQL by Yan Cui
Building a social network in under 4 weeks with Serverless and GraphQLBuilding a social network in under 4 weeks with Serverless and GraphQL
Building a social network in under 4 weeks with Serverless and GraphQL
Yan Cui289 views
Patterns and practices for building resilient serverless applications by Yan Cui
Patterns and practices for building resilient serverless applicationsPatterns and practices for building resilient serverless applications
Patterns and practices for building resilient serverless applications
Yan Cui393 views
Patterns and Practices for Building Resilient Serverless Applications by Yan Cui
Patterns and Practices for Building Resilient Serverless ApplicationsPatterns and Practices for Building Resilient Serverless Applications
Patterns and Practices for Building Resilient Serverless Applications
Yan Cui272 views
Serverless in production, an experience report (CoDe-Conf) by Yan Cui
Serverless in production, an experience report (CoDe-Conf)Serverless in production, an experience report (CoDe-Conf)
Serverless in production, an experience report (CoDe-Conf)
Yan Cui1.1K views
Patterns and practices for building resilient serverless applications.pdf by Yan Cui
Patterns and practices for building resilient serverless applications.pdfPatterns and practices for building resilient serverless applications.pdf
Patterns and practices for building resilient serverless applications.pdf
Yan Cui170 views
Yan Cui - Serverless in production, an experience report - Codemotion Milan 2017 by Codemotion
Yan Cui - Serverless in production, an experience report - Codemotion Milan 2017Yan Cui - Serverless in production, an experience report - Codemotion Milan 2017
Yan Cui - Serverless in production, an experience report - Codemotion Milan 2017
Codemotion693 views

More from Yan Cui

How to win the game of trade-offs by
How to win the game of trade-offsHow to win the game of trade-offs
How to win the game of trade-offsYan Cui
21 views84 slides
How to choose the right messaging service by
How to choose the right messaging serviceHow to choose the right messaging service
How to choose the right messaging serviceYan Cui
135 views118 slides
How to choose the right messaging service for your workload by
How to choose the right messaging service for your workloadHow to choose the right messaging service for your workload
How to choose the right messaging service for your workloadYan Cui
65 views113 slides
Lambda and DynamoDB best practices by
Lambda and DynamoDB best practicesLambda and DynamoDB best practices
Lambda and DynamoDB best practicesYan Cui
817 views148 slides
Lessons from running AppSync in prod by
Lessons from running AppSync in prodLessons from running AppSync in prod
Lessons from running AppSync in prodYan Cui
1.1K views102 slides
How to ship customer value faster with step functions by
How to ship customer value faster with step functionsHow to ship customer value faster with step functions
How to ship customer value faster with step functionsYan Cui
652 views157 slides

More from Yan Cui(20)

How to win the game of trade-offs by Yan Cui
How to win the game of trade-offsHow to win the game of trade-offs
How to win the game of trade-offs
Yan Cui21 views
How to choose the right messaging service by Yan Cui
How to choose the right messaging serviceHow to choose the right messaging service
How to choose the right messaging service
Yan Cui135 views
How to choose the right messaging service for your workload by Yan Cui
How to choose the right messaging service for your workloadHow to choose the right messaging service for your workload
How to choose the right messaging service for your workload
Yan Cui65 views
Lambda and DynamoDB best practices by Yan Cui
Lambda and DynamoDB best practicesLambda and DynamoDB best practices
Lambda and DynamoDB best practices
Yan Cui817 views
Lessons from running AppSync in prod by Yan Cui
Lessons from running AppSync in prodLessons from running AppSync in prod
Lessons from running AppSync in prod
Yan Cui1.1K views
How to ship customer value faster with step functions by Yan Cui
How to ship customer value faster with step functionsHow to ship customer value faster with step functions
How to ship customer value faster with step functions
Yan Cui652 views
How serverless changes the cost paradigm by Yan Cui
How serverless changes the cost paradigmHow serverless changes the cost paradigm
How serverless changes the cost paradigm
Yan Cui1.1K views
Why your next serverless project should use AWS AppSync by Yan Cui
Why your next serverless project should use AWS AppSyncWhy your next serverless project should use AWS AppSync
Why your next serverless project should use AWS AppSync
Yan Cui1.3K views
How to bring chaos engineering to serverless by Yan Cui
How to bring chaos engineering to serverlessHow to bring chaos engineering to serverless
How to bring chaos engineering to serverless
Yan Cui456 views
Migrating existing monolith to serverless in 8 steps by Yan Cui
Migrating existing monolith to serverless in 8 stepsMigrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 steps
Yan Cui402 views
FinDev as a business advantage in the post covid19 economy by Yan Cui
FinDev as a business advantage in the post covid19 economyFinDev as a business advantage in the post covid19 economy
FinDev as a business advantage in the post covid19 economy
Yan Cui546 views
How to improve lambda cold starts by Yan Cui
How to improve lambda cold startsHow to improve lambda cold starts
How to improve lambda cold starts
Yan Cui867 views
What can you do with lambda in 2020 by Yan Cui
What can you do with lambda in 2020What can you do with lambda in 2020
What can you do with lambda in 2020
Yan Cui1K views
A chaos experiment a day, keeping the outage away by Yan Cui
A chaos experiment a day, keeping the outage awayA chaos experiment a day, keeping the outage away
A chaos experiment a day, keeping the outage away
Yan Cui385 views
How to debug slow lambda response times by Yan Cui
How to debug slow lambda response timesHow to debug slow lambda response times
How to debug slow lambda response times
Yan Cui317 views
What can you do with lambda in 2020 by Yan Cui
What can you do with lambda in 2020What can you do with lambda in 2020
What can you do with lambda in 2020
Yan Cui679 views
How to ship customer value faster with step functions by Yan Cui
How to ship customer value faster with step functionsHow to ship customer value faster with step functions
How to ship customer value faster with step functions
Yan Cui680 views
Debugging Lambda timeouts by Yan Cui
Debugging Lambda timeoutsDebugging Lambda timeouts
Debugging Lambda timeouts
Yan Cui218 views
Serverless a superpower for frontend developers by Yan Cui
Serverless a superpower for frontend developersServerless a superpower for frontend developers
Serverless a superpower for frontend developers
Yan Cui591 views
Debugging AWS Lambda Performance Issues by Yan Cui
Debugging AWS Lambda Performance  IssuesDebugging AWS Lambda Performance  Issues
Debugging AWS Lambda Performance Issues
Yan Cui347 views

Recently uploaded

Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...ShapeBlue
180 views18 slides
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TShapeBlue
152 views34 slides
CryptoBotsAI by
CryptoBotsAICryptoBotsAI
CryptoBotsAIchandureddyvadala199
40 views5 slides
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...ShapeBlue
194 views62 slides
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue by
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlueMigrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlueShapeBlue
218 views20 slides
State of the Union - Rohit Yadav - Apache CloudStack by
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStackShapeBlue
297 views53 slides

Recently uploaded(20)

Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue180 views
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by ShapeBlue
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
ShapeBlue152 views
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by ShapeBlue
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
ShapeBlue194 views
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue by ShapeBlue
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlueMigrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue
Migrating VMware Infra to KVM Using CloudStack - Nicolas Vazquez - ShapeBlue
ShapeBlue218 views
State of the Union - Rohit Yadav - Apache CloudStack by ShapeBlue
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStack
ShapeBlue297 views
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ... by ShapeBlue
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
ShapeBlue119 views
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R... by ShapeBlue
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
ShapeBlue173 views
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT by ShapeBlue
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBITUpdates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
ShapeBlue206 views
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava... by ShapeBlue
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
ShapeBlue145 views
The Role of Patterns in the Era of Large Language Models by Yunyao Li
The Role of Patterns in the Era of Large Language ModelsThe Role of Patterns in the Era of Large Language Models
The Role of Patterns in the Era of Large Language Models
Yunyao Li85 views
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... by ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue159 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue126 views
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... by Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker54 views
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O... by ShapeBlue
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
ShapeBlue132 views
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue221 views
Business Analyst Series 2023 - Week 4 Session 7 by DianaGray10
Business Analyst Series 2023 -  Week 4 Session 7Business Analyst Series 2023 -  Week 4 Session 7
Business Analyst Series 2023 - Week 4 Session 7
DianaGray10139 views
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda... by ShapeBlue
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
ShapeBlue161 views

How to build observability into a serverless application