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
84
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
CloudConf Italy - A Tale of Tail Latency
arapulido
0
110
Abrazando el cambio: Gobierno de Kubernetes como código con OPA y Gatekeeper
arapulido
0
70
Navigating the Sea of Local Kubernetes Clusters
arapulido
0
100
Cloud Services in Kubernetes - Discovering and Using Services with the Service Catalog and Kubeapps
arapulido
0
81
Telepresence - Seamless Development Environments in Kubernetes
arapulido
0
12k
Kubeless demo @ CNCF WG-Serverless meeting
arapulido
0
310
Securing the IoT - J On The Beach 2017
arapulido
1
160
Other Decks in Programming
See All in Programming
AWS Infrastructure as Code の新機能 2025 総まとめ 〜SA 4人による怒涛のデモ祭り〜
konokenj
10
3k
CSC307 Lecture 12
javiergs
PRO
0
450
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
190
株式会社 Sun terras カンパニーデック
sunterras
0
1.9k
CSC307 Lecture 14
javiergs
PRO
0
440
CSC307 Lecture 13
javiergs
PRO
0
310
AIに仕事を丸投げしたら、本当に楽になれるのか
dip_tech
PRO
0
170
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
140
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
440
Oxlint JS plugins
kazupon
1
1.2k
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
120
Rails Girls Tokyo 18th GMO Pepabo Sponsor Talk
yutokyokutyo
0
180
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4.2k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
140
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Between Models and Reality
mayunak
1
210
Abbi's Birthday
coloredviolet
2
5k
Visualization
eitanlees
150
17k
Tell your own story through comics
letsgokoyo
1
830
Accessibility Awareness
sabderemane
0
71
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
2
65
GraphQLとの向き合い方2022年版
quramy
50
14k
The Language of Interfaces
destraynor
162
26k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
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