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
Instrumenting Application Stack in Dynamically ...
Search
Mike Fiedler
November 15, 2013
Technology
70
0
Share
Instrumenting Application Stack in Dynamically Scaling Environment
DMG212 AWS re:Invent 2013
Mike Fiedler
November 15, 2013
More Decks by Mike Fiedler
See All by Mike Fiedler
Fixing AWS with AWS
miketheman
1
140
HOW DO YOU KNOW iT'S WORKiNG
miketheman
0
110
Giving (and Taking) Back
miketheman
0
65
Where Do We Go From Here?
miketheman
0
160
What's In This Cookbook?
miketheman
0
59
Treating Your Infrastructure Like Garbage
miketheman
2
1.7k
MongoDB - Operations Best Practices
miketheman
1
130
MongoDB in the Cloud - Amazon Web Services
miketheman
3
120
Other Decks in Technology
See All in Technology
LLM時代のリファクタリング戦略_AIエージェントによる段階的・安全なTS移行方法
play_inc
0
180
TSKaigi 2026 - 型プラグインシステムの実装に使われるテクニック
teamlab
PRO
2
340
イベントで大活躍する電子ペーパー名札 〜その3〜 / ビジュアルプログラミングIoTLT vol.23
you
PRO
0
130
CloudFront VPCオリジンとVPC Latticeサービスの内部ALBをマルチアカウントで一元利用しよう
duelist2020jp
5
230
TypeScriptエンジニアのためのWASMランタイム入門:AssemblyScriptから理解するメモリの実態(ayano)
ayanoyuki
0
130
Node.js+TypeScriptにおけるCJS/ESM相互運用の最新ポイント
grainrigi
2
120
大規模環境でどのように監視を実現する?
yuobayashi
1
140
Geek Woman の育ち方 〜コミュニティとAIと〜
chicaco
0
410
情シスがMCP環境導入時に打ちのめされる認可の崖
oidfj
0
440
類似画像検索モデルの開発ノウハウ
lycorptech_jp
PRO
3
780
NFLコンペ2026 解法
lycorptech_jp
PRO
0
100
ソフトウェアサプライチェーン攻撃対策として今からサクッとできること
flatt_security
2
130
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
1
3.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
The SEO identity crisis: Don't let AI make you average
varn
0
470
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
150
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
150
Ruling the World: When Life Gets Gamed
codingconduct
0
240
Into the Great Unknown - MozCon
thekraken
41
2.5k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
930
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
370
Technical Leadership for Architectural Decision Making
baasie
3
370
Transcript
Instrumenting your Application Stack in a Dynamically Scaling Environment Mike
Fiedler, Datadog November 15, 2013
The Past • Server uptime • Intertwined applications • SPOFs
The Present • SOA • Scale or Fail • Data-driven
decisions
Modern application stack User LB Web Data
Failure is inevitable
Design to tolerate failure
Things that produce metrics business/service Services • applicatio n •
OS • instances API-based • S3, S*S • RDS, RedShift • etc Users • RUM
The Desire
CPU comparison (hypervisor)
CPU comparison (Agent)
My Stack • HAProxy • Apache HTTP • Bottle.py –
Custom python webapp • MongoDB • EC2 • Chef • Datadog • Users
Tracking Database operations
Moving up the stack…
Even higher…
Using metadata for more flavor
Replace an instance, keep the metrics
Enter…
Aggregating numbers
Comparing numbers
My App from bottle import route import pymongo import json
db = pymongo.Connection('mongodb://localhost').test @route('/insert/:name') def insert(name): doc = {'name': name} db.words.update(doc, {"$inc":{"count": 1}}, upsert=True) return json.dumps(doc, default=default)
Add 2 lines and you win! from bottle import route
import pymongo import json from statsd import statsd db = pymongo.Connection('mongodb://localhost').test @route('/insert/:name') @statsd.increment('fullstack.insert') def insert(name): doc = {'name': name} db.words.update(doc, {"$inc":{"count": 1}}, upsert=True) return json.dumps(doc, default=default)
Profit!
Correlation
Don’t be caught unaware
None
Questions Time!
We are sincerely eager to hear your feedback on this
presentation and on re:Invent. Please fill out an evaluation form when you have a chance.