Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Observability For Serverless Workloads
Search
Ara
February 21, 2020
Programming
0
67
Observability For Serverless Workloads
What is it observability? How we can improve observability when it comes to serverless workloads?
Ara
February 21, 2020
Tweet
Share
More Decks by Ara
See All by Ara
Abrazando el cambio: Gobierno de Kubernetes como código con OPA y Gatekeeper
arapulido
0
36
Navigating the Sea of Local Kubernetes Clusters
arapulido
0
80
Cloud Services in Kubernetes - Discovering and Using Services with the Service Catalog and Kubeapps
arapulido
0
59
Telepresence - Seamless Development Environments in Kubernetes
arapulido
0
9.8k
Kubeless demo @ CNCF WG-Serverless meeting
arapulido
0
230
Securing the IoT - J On The Beach 2017
arapulido
1
150
Other Decks in Programming
See All in Programming
障害対応を起点としたもっといい開発と運用のサイクル作りのためにできること / Hatena Enginner Seminar #29
polamjag
0
430
VS Code をプロダクトにどう取り込むか
onomax
1
780
GitHub Copilotのススメ
marcy731
1
240
パフォーマンスを求めてDBに機能を寄せる戦略
aoyagikouhei
0
110
Build Apps for iOS, Android & Desktop in 100% Kotlin With Compose Multiplatform (mDevCamp 2024)
zsmb
0
480
“Seeing Like a Programmer”—Resiliency, Limits, and Moral Hazards in Software Engineering (LambdaConf 2024)
chriskrycho
0
340
Anthropic Cookbook のおすすめレシピ
schroneko
7
1.4k
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
290
Domain-Driven Transformation
hschwentner
2
1.5k
CREってこういうこと? 体験入社 - 提案資料 - / what-is-cre-trial-employment
shinden
1
580
Open standards for building event-driven applications in the cloud
meteatamel
0
190
使ってみよう Azure AI Document Intelligence
kosmosebi
2
370
Featured
See All Featured
The Cult of Friendly URLs
andyhume
74
5.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
21
1.9k
Unsuck your backbone
ammeep
664
57k
What's in a price? How to price your products and services
michaelherold
238
11k
Producing Creativity
orderedlist
PRO
338
39k
Facilitating Awesome Meetings
lara
43
5.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
We Have a Design System, Now What?
morganepeng
43
6.8k
The Invisible Customer
myddelton
114
12k
Into the Great Unknown - MozCon
thekraken
15
1k
KATA
mclloyd
16
12k
Being A Developer After 40
akosma
67
580k
Transcript
Observability for Serverless Workloads Ara Pulido @arapulido
Developer Advocate at Datadog @arapulido at Twitter
[email protected]
About me
Observability
Observability Microservices Containers FaaS Serverless CI/CD ML Big Data
A bit of history
Monoliths
Different user expectations
Infrastructure monitoring
Oops!
Microservices
Infrastructure monitoring is no longer enough
Observability A measure of how well internal states of a
system can be inferred from knowledge of its external outputs
Logs Metrics Tracing
Logs Metrics Tracing Events User/Browser tests Data visualization ML Queries
Serverless
NO ACCESS TO THE UNDERLYING OS CHARGED BY EXECUTION TIME
/ MEMORY ALLOCATED IN MANY CLOUDS, RUNTIMES ARE A BIT OF A BLACKBOX Serverless
Logs Metrics Tracing Demo application https://dtdg.co/faas-sample
Demo application 1 face - No duplicates No faces >
1 face Duplicated
Demo application Search Faces Web app Index Faces Persist Data
Detect Faces
Demo application Detect Faces Search Faces Web app Index Faces
Persist Data
Demo application Search Faces Web app Index Faces Persist Data
Detect Faces
Demo application Search Faces Web app Index Faces Persist Data
Detect Faces
Demo application Search Faces Web app Index Faces Persist Data
Detect Faces
Demo application Search Faces Web app Index Faces Persist Data
Detect Faces
Logs Metrics Tracing
THE PLATFORM LOGS STDOUT, STDERR LOG AS MUCH AS POSSIBLE
(PART OF THE PLATFORM) Logs USE LOG FORWARDERS TO COLLECT THEM ELSEWHERE USE YOUR LANGUAGE LOGGING LIBRARY TO DO MORE COMPLEX STUFF
Logs Cloud Log System Log Forwarder Log system
Logs
Logs
Logs Metrics Tracing
Collecting Metrics
Collecting metrics Send batch Send batch Send batch
Cold start Cold start Execution context Collecting metrics
Cold start EXECUTION CONTEXT SHARES DISK ACROSS INVOCATIONS Cold start
Execution context Collecting metrics
Cold start EXECUTION CONTEXT SHARES DISK ACROSS INVOCATIONS Cold start
Send batch Execution context Collecting metrics
Cold start WE CANNOT KNOW WHEN IT IS GOING TO
BE GARBAGE COLLECTED Cold start Send batch Execution context Collecting metrics EXECUTION CONTEXT SHARES DISK ACROSS INVOCATIONS Send batch
Metrics in Logs Cloud Log System Log Forwarder Metrics
Metrics in Logs Cloud Log System Log Forwarder Metrics
Infrastructure Metrics
4 golden signals LATENCY TRAFFIC SATURATION ERRORS
DURATION INVOCATIONS THROTTLE ERRORS 4 golden signals
Serverless specific COLD STARTS WARM STARTS
BILLED DURATION - DURATION Serverless specific
Use metrics to save $$$ (and time) ESTIMATED COST PER
FUNCTION
Use metrics to save $$$ (and time) 700ms 500ms 300ms
128MB 192MB 320MB 128MB = $ 0.000001465 192MB = $ 0.000001565 320MB = $ 0.000001563
Business Metrics
EACH FUNCTION IS A POTENTIAL BUSINESS METRIC GATHER THOSE AND
USE THEM TO IMPROVE YOUR BUSINESS Business metrics
Business metrics
Logs Metrics Tracing
None
S1 S2 S3 S4 S5
S1 S2 S3 S4 S5 TRACE SPANS
Instrumentation with traces
No OS / No agent
No OS / No agent Use cloud specific libraries for
your functions
X-Ray traces
No OS / No agent Use cloud specific libraries for
your functions … but make sure you don’t break your current traces
Demo application Search Faces Web app Index Faces Persist Data
Detect Faces
Full app trace
Full app trace
Full app trace
Full app trace
Full app trace
Full app trace
No OS / No agent Use cloud specific libraries for
your functions … but make sure you don’t break your current traces or use logs!!
Logs Metrics Tracing
Take aways
USE LOGS FOR METRICS TO AVOID LOSING DATA ADD YOUR
FUNCTIONS TO YOUR CURRENT TRACES (if possible) LOGS ARE CHEAP. LOG A LOT. TRACK THOSE BUSINESS METRICS
Thank you! (we are hiring!) Ara Pulido @arapulido Demo app:
https://dtdg.co/faas-sample