Enviar pesquisa
Carregar
Metrics-Driven Engineering at Etsy
•
65 gostaram
•
10,580 visualizações
Mike Brittain
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 46
Baixar agora
Baixar para ler offline
Recomendados
Take My Logs. Please!
Take My Logs. Please!
Mike Brittain
Web Performance Culture and Tools at Etsy
Web Performance Culture and Tools at Etsy
Mike Brittain
Metrics-Driven Engineering
Metrics-Driven Engineering
Mike Brittain
Web Performance Culture and Tools at Etsy
Web Performance Culture and Tools at Etsy
Mike Brittain
Advanced Topics in Continuous Deployment
Advanced Topics in Continuous Deployment
Mike Brittain
Mobile Device APIs
Mobile Device APIs
James Pearce
Your code are my tests
Your code are my tests
Michelangelo van Dam
Visual Component Testing -- w/ Gil Tayar (Applitools) and Gleb Bahmutov (Cyp...
Visual Component Testing -- w/ Gil Tayar (Applitools) and Gleb Bahmutov (Cyp...
Applitools
Recomendados
Take My Logs. Please!
Take My Logs. Please!
Mike Brittain
Web Performance Culture and Tools at Etsy
Web Performance Culture and Tools at Etsy
Mike Brittain
Metrics-Driven Engineering
Metrics-Driven Engineering
Mike Brittain
Web Performance Culture and Tools at Etsy
Web Performance Culture and Tools at Etsy
Mike Brittain
Advanced Topics in Continuous Deployment
Advanced Topics in Continuous Deployment
Mike Brittain
Mobile Device APIs
Mobile Device APIs
James Pearce
Your code are my tests
Your code are my tests
Michelangelo van Dam
Visual Component Testing -- w/ Gil Tayar (Applitools) and Gleb Bahmutov (Cyp...
Visual Component Testing -- w/ Gil Tayar (Applitools) and Gleb Bahmutov (Cyp...
Applitools
Develop and Deploy your JavaEE micro service in less than 5 minutes with Apac...
Develop and Deploy your JavaEE micro service in less than 5 minutes with Apac...
Alex Soto
Quality Assurance for PHP projects - ZendCon 2012
Quality Assurance for PHP projects - ZendCon 2012
Michelangelo van Dam
Night Watch with QA
Night Watch with QA
Carsten Sandtner
Building a JavaScript Library
Building a JavaScript Library
jeresig
Python: the coolest is yet to come
Python: the coolest is yet to come
Pablo Enfedaque
Performance, Games, and Distributed Testing in JavaScript
Performance, Games, and Distributed Testing in JavaScript
jeresig
Vuejs testing
Vuejs testing
Greg TAPPERO
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
apidays
APIdays Helsinki 2019 - API Versioning with REST, JSON and Swagger with Thoma...
APIdays Helsinki 2019 - API Versioning with REST, JSON and Swagger with Thoma...
apidays
The Screenplay Pattern: Better Interactions for Better Automation
The Screenplay Pattern: Better Interactions for Better Automation
Applitools
Testing persistence in PHP with DbUnit
Testing persistence in PHP with DbUnit
Peter Wilcsinszky
The JavaFX Ecosystem
The JavaFX Ecosystem
Andres Almiray
Automation puzzlers
Automation puzzlers
Yaroslav Pernerovsky
WebDriver Waits
WebDriver Waits
Yaroslav Pernerovsky
Implicit and Explicit waits in Selenium WebDriwer, how to.
Implicit and Explicit waits in Selenium WebDriwer, how to.
Yaroslav Pernerovsky
The Play Framework at LinkedIn
The Play Framework at LinkedIn
Yevgeniy Brikman
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
Steve Wallin
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
Leonardo Balter
The Best (and Worst) of Django
The Best (and Worst) of Django
Jacob Kaplan-Moss
Automatisation in development and testing - within budget
Automatisation in development and testing - within budget
David Lukac
How to Get to Second Base with Your CDN
How to Get to Second Base with Your CDN
Mike Brittain
Continuous feedback
Continuous feedback
Siddhi
Mais conteúdo relacionado
Mais procurados
Develop and Deploy your JavaEE micro service in less than 5 minutes with Apac...
Develop and Deploy your JavaEE micro service in less than 5 minutes with Apac...
Alex Soto
Quality Assurance for PHP projects - ZendCon 2012
Quality Assurance for PHP projects - ZendCon 2012
Michelangelo van Dam
Night Watch with QA
Night Watch with QA
Carsten Sandtner
Building a JavaScript Library
Building a JavaScript Library
jeresig
Python: the coolest is yet to come
Python: the coolest is yet to come
Pablo Enfedaque
Performance, Games, and Distributed Testing in JavaScript
Performance, Games, and Distributed Testing in JavaScript
jeresig
Vuejs testing
Vuejs testing
Greg TAPPERO
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
apidays
APIdays Helsinki 2019 - API Versioning with REST, JSON and Swagger with Thoma...
APIdays Helsinki 2019 - API Versioning with REST, JSON and Swagger with Thoma...
apidays
The Screenplay Pattern: Better Interactions for Better Automation
The Screenplay Pattern: Better Interactions for Better Automation
Applitools
Testing persistence in PHP with DbUnit
Testing persistence in PHP with DbUnit
Peter Wilcsinszky
The JavaFX Ecosystem
The JavaFX Ecosystem
Andres Almiray
Automation puzzlers
Automation puzzlers
Yaroslav Pernerovsky
WebDriver Waits
WebDriver Waits
Yaroslav Pernerovsky
Implicit and Explicit waits in Selenium WebDriwer, how to.
Implicit and Explicit waits in Selenium WebDriwer, how to.
Yaroslav Pernerovsky
The Play Framework at LinkedIn
The Play Framework at LinkedIn
Yevgeniy Brikman
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
Steve Wallin
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
Leonardo Balter
The Best (and Worst) of Django
The Best (and Worst) of Django
Jacob Kaplan-Moss
Automatisation in development and testing - within budget
Automatisation in development and testing - within budget
David Lukac
Mais procurados
(20)
Develop and Deploy your JavaEE micro service in less than 5 minutes with Apac...
Develop and Deploy your JavaEE micro service in less than 5 minutes with Apac...
Quality Assurance for PHP projects - ZendCon 2012
Quality Assurance for PHP projects - ZendCon 2012
Night Watch with QA
Night Watch with QA
Building a JavaScript Library
Building a JavaScript Library
Python: the coolest is yet to come
Python: the coolest is yet to come
Performance, Games, and Distributed Testing in JavaScript
Performance, Games, and Distributed Testing in JavaScript
Vuejs testing
Vuejs testing
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
APIdays Helsinki 2019 - API Versioning with REST, JSON and Swagger with Thoma...
APIdays Helsinki 2019 - API Versioning with REST, JSON and Swagger with Thoma...
The Screenplay Pattern: Better Interactions for Better Automation
The Screenplay Pattern: Better Interactions for Better Automation
Testing persistence in PHP with DbUnit
Testing persistence in PHP with DbUnit
The JavaFX Ecosystem
The JavaFX Ecosystem
Automation puzzlers
Automation puzzlers
WebDriver Waits
WebDriver Waits
Implicit and Explicit waits in Selenium WebDriwer, how to.
Implicit and Explicit waits in Selenium WebDriwer, how to.
The Play Framework at LinkedIn
The Play Framework at LinkedIn
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
The Best (and Worst) of Django
The Best (and Worst) of Django
Automatisation in development and testing - within budget
Automatisation in development and testing - within budget
Destaque
How to Get to Second Base with Your CDN
How to Get to Second Base with Your CDN
Mike Brittain
Continuous feedback
Continuous feedback
Siddhi
Metrics driven development 10.09.2014
Metrics driven development 10.09.2014
Erno Aapa
Continuous Deployment at Etsy — TimesOpen NYC
Continuous Deployment at Etsy — TimesOpen NYC
Mike Brittain
Continuous Deployment: The Dirty Details
Continuous Deployment: The Dirty Details
Mike Brittain
Simple Log Analysis and Trending
Simple Log Analysis and Trending
Mike Brittain
On Failure and Resilience
On Failure and Resilience
Mike Brittain
A Whirlwind Tour of Etsy's Monitoring Stack
A Whirlwind Tour of Etsy's Monitoring Stack
Daniel Schauenberg
Continuous Delivery: The Dirty Details
Continuous Delivery: The Dirty Details
Mike Brittain
From Building a Marketplace to Building Teams
From Building a Marketplace to Building Teams
Mike Brittain
Metrics Driven Development and DevOps - Agile 2014
Metrics Driven Development and DevOps - Agile 2014
Ernest Mueller
Metrics to Power DevOps
Metrics to Power DevOps
CollabNet
The Real Life Social Network v2
The Real Life Social Network v2
Paul Adams
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
Mike Brittain
26 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 2018
Brian Solis
Destaque
(15)
How to Get to Second Base with Your CDN
How to Get to Second Base with Your CDN
Continuous feedback
Continuous feedback
Metrics driven development 10.09.2014
Metrics driven development 10.09.2014
Continuous Deployment at Etsy — TimesOpen NYC
Continuous Deployment at Etsy — TimesOpen NYC
Continuous Deployment: The Dirty Details
Continuous Deployment: The Dirty Details
Simple Log Analysis and Trending
Simple Log Analysis and Trending
On Failure and Resilience
On Failure and Resilience
A Whirlwind Tour of Etsy's Monitoring Stack
A Whirlwind Tour of Etsy's Monitoring Stack
Continuous Delivery: The Dirty Details
Continuous Delivery: The Dirty Details
From Building a Marketplace to Building Teams
From Building a Marketplace to Building Teams
Metrics Driven Development and DevOps - Agile 2014
Metrics Driven Development and DevOps - Agile 2014
Metrics to Power DevOps
Metrics to Power DevOps
The Real Life Social Network v2
The Real Life Social Network v2
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
26 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 2018
Semelhante a Metrics-Driven Engineering at Etsy
The Nitro Project: Next-Generation EC2 Infrastructure - AWS Online Tech Talks
The Nitro Project: Next-Generation EC2 Infrastructure - AWS Online Tech Talks
Amazon Web Services
DDoS attacks, Booters, and DDoSDB
DDoS attacks, Booters, and DDoSDB
University of Twente
5 x HTML5 worth using in APEX (5)
5 x HTML5 worth using in APEX (5)
Christian Rokitta
Malware Detection with OSSEC HIDS - OSSECCON 2014
Malware Detection with OSSEC HIDS - OSSECCON 2014
Santiago Bassett
Learn How to Use a Time Series Platform to Monitor All Aspects of Your Kubern...
Learn How to Use a Time Series Platform to Monitor All Aspects of Your Kubern...
DevOps.com
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
Wim Godden
Ten Battle-Tested Tips for Atlassian Connect Add-ons
Ten Battle-Tested Tips for Atlassian Connect Add-ons
Atlassian
Monitoring Complex Systems: Keeping Your Head on Straight in a Hard World
Monitoring Complex Systems: Keeping Your Head on Straight in a Hard World
Brian Troutwine
Fundamentals of Complete Crash and Hang Memory Dump Analysis
Fundamentals of Complete Crash and Hang Memory Dump Analysis
Dmitry Vostokov
apidays LIVE Australia - Strangling the monolith with a reactive GraphQL gate...
apidays LIVE Australia - Strangling the monolith with a reactive GraphQL gate...
apidays
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
Wim Godden
Re-Design with Elixir/OTP
Re-Design with Elixir/OTP
Mustafa TURAN
Minor Mistakes In Web Portals
Minor Mistakes In Web Portals
msobiegraj
MLflow at Company Scale
MLflow at Company Scale
Databricks
C5 Instances and the Evolution of Amazon EC2 Virtualization - CMP332 - re:Inv...
C5 Instances and the Evolution of Amazon EC2 Virtualization - CMP332 - re:Inv...
Amazon Web Services
Introducing Neo4j 3.1: New Security and Clustering Architecture
Introducing Neo4j 3.1: New Security and Clustering Architecture
Neo4j
Capacity Management from Flickr
Capacity Management from Flickr
xlight
What Lies Beneath
What Lies Beneath
Maurice Naftalin
Fast, stable and scalable true radix sorting with Matt Dowle at useR! Aalborg
Fast, stable and scalable true radix sorting with Matt Dowle at useR! Aalborg
Sri Ambati
Performance tests - it's a trap
Performance tests - it's a trap
Andrzej Ludwikowski
Semelhante a Metrics-Driven Engineering at Etsy
(20)
The Nitro Project: Next-Generation EC2 Infrastructure - AWS Online Tech Talks
The Nitro Project: Next-Generation EC2 Infrastructure - AWS Online Tech Talks
DDoS attacks, Booters, and DDoSDB
DDoS attacks, Booters, and DDoSDB
5 x HTML5 worth using in APEX (5)
5 x HTML5 worth using in APEX (5)
Malware Detection with OSSEC HIDS - OSSECCON 2014
Malware Detection with OSSEC HIDS - OSSECCON 2014
Learn How to Use a Time Series Platform to Monitor All Aspects of Your Kubern...
Learn How to Use a Time Series Platform to Monitor All Aspects of Your Kubern...
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
Ten Battle-Tested Tips for Atlassian Connect Add-ons
Ten Battle-Tested Tips for Atlassian Connect Add-ons
Monitoring Complex Systems: Keeping Your Head on Straight in a Hard World
Monitoring Complex Systems: Keeping Your Head on Straight in a Hard World
Fundamentals of Complete Crash and Hang Memory Dump Analysis
Fundamentals of Complete Crash and Hang Memory Dump Analysis
apidays LIVE Australia - Strangling the monolith with a reactive GraphQL gate...
apidays LIVE Australia - Strangling the monolith with a reactive GraphQL gate...
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
Re-Design with Elixir/OTP
Re-Design with Elixir/OTP
Minor Mistakes In Web Portals
Minor Mistakes In Web Portals
MLflow at Company Scale
MLflow at Company Scale
C5 Instances and the Evolution of Amazon EC2 Virtualization - CMP332 - re:Inv...
C5 Instances and the Evolution of Amazon EC2 Virtualization - CMP332 - re:Inv...
Introducing Neo4j 3.1: New Security and Clustering Architecture
Introducing Neo4j 3.1: New Security and Clustering Architecture
Capacity Management from Flickr
Capacity Management from Flickr
What Lies Beneath
What Lies Beneath
Fast, stable and scalable true radix sorting with Matt Dowle at useR! Aalborg
Fast, stable and scalable true radix sorting with Matt Dowle at useR! Aalborg
Performance tests - it's a trap
Performance tests - it's a trap
Último
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
Lars Bell
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
DianaGray10
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
BkGupta21
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Fwdays
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
LoriGlavin3
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
HarshalMandlekar2
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
mohitsingh558521
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Dilum Bandara
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Alan Dix
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
hariprasad279825
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
LoriGlavin3
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
LoriGlavin3
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
Zilliz
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
Nathaniel Shimoni
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
Lorenzo Miniero
Último
(20)
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Training state-of-the-art general text embedding
Training state-of-the-art general text embedding
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
Metrics-Driven Engineering at Etsy
1.
Metrics-driven Engineering at Etsy
MIKE BRITTAIN mike@etsy.com @mikebrittain
2.
Logs, Graphs, Trends,
and Correlations
3.
Making Decisions
4.
How many visitors
are using this thing?
5.
Can we deploy
that to 100% of our visitors?
6.
Did we make
it faster?
7.
Did I just
break something?
8.
Q. Who makes
the graphs? A. Well, the Ops team manages the network, racks the servers, installed the monitoring tools, wears the pagers, blah, blah, blah...
9.
(but...) Engineers build
the application.
10.
Dev + Ops
11.
Access
12.
Yes
No
13.
“Engineers are too
busy meeting our product deadlines.”
14.
Here’s the big
secret...
15.
Cacti (network, SNMP) Ganglia
(machines) Graphite (application) Splunk (log analysis, nightly reports) Nagios (alerting)
16.
Logging
17.
Logger::log_error("User login
failed. Reason: $msg for $username", “login”);
18.
web0054 [Fri Mar
04 16:27:48 2011] [info] [login] User login failed. Reason: wrong password for ...
19.
web0054 [Fri Mar
04 16:27:48 2011] [info] [login] User login failed. Reason: wrong password for ...
20.
web0054 [Fri Mar
04 16:27:48 2011] [info] [login] User login failed. Reason: wrong password for ...
21.
web0054 [Fri Mar
04 16:27:48 2011] [info] [login] User login failed. Reason: wrong password for ...
22.
web0054 [Fri Mar
04 16:27:48 2011] [info] [login] User login failed. Reason: wrong password for ...
23.
Logster
24.
Forked from ganglia-logtailer... -
Daemon mode (only cron mode) + Support for Graphite + Simplified parsing scripts
25.
web0001
[04:28:54 2011] [error] [client 10.101.x.x] Help me, Rhonda. web0001 [04:28:54 2011] [error] [client 10.101.x.x] Oh noooooo! web0001 [04:28:54 2011] [error] [client 10.101.x.x] Gaaaaahhh! web0001 [04:28:54 2011] [error] [client 10.101.x.x] Heeeeeeellllllllllllllppppp! web0001 [04:28:54 2011] [error] [client 10.101.x.x] Oh noooooo! web0001 [04:28:54 2011] [fatal] [client 10.101.x.x] Gaaaaahhh! web0201 [04:28:54 2011] [warning] [client 10.101.x.x] Gaaaaahhh! web0034 [04:28:54 2011] [warning] [client 10.101.x.x] Oh nooooooooooo web0001 [04:28:54 2011] [error] [client 10.101.x.x] Gaaaaahhh!!! web1101 [04:28:54 2011] [error] [client 10.101.x.x] Gaaaaahhh!!! web0201 [04:28:54 2011] [error] [client 10.101.x.x] You've been eaten by a grue. web0055 [04:28:54 2011] [fatal] [client 10.101.x.x] Gaaaaahhh!!! web0002 [04:28:54 2011] [warning] [client 10.101.x.x] Sky is falling. web0089 [04:28:54 2011] [error] [client 10.101.x.x] Gaaaaahhh!!! web0020 [04:28:54 2011] [error] [client 10.101.x.x] Sky is falling. web1101 [04:28:54 2011] [fatal] [client 10.101.x.x] Gaaaaahhh! web0055 [04:28:54 2011] [warning] [client 10.101.x.x] Gaaaaahhh! web0001 [04:28:54 2011] [warning] [client 10.101.x.x] Oh nooooooooooo web0001 [04:28:54 2011] [error] [client 10.101.x.x] Gaaaaahhh!!! web0034 [04:28:54 2011] [error] [client 10.101.x.x] Gaaaaahhh!!! web0087 [04:28:54 2011] [fatal] [client 10.101.x.x] Sky is falling. web0002 [04:28:54 2011] [error] [client 10.101.x.x] Oh noooooo! web0201 [04:28:54 2011] [fatal] [client 10.101.x.x] Gaaaaahhh! web0077 [04:28:54 2011] [warning] [client 10.101.x.x] Gaaaaahhh! web0355 [04:28:54 2011] [warning] [client 10.101.x.x] Oh nooooooooooo web0052 [04:28:54 2011] [error] [client 10.101.x.x] Gaaaaahhh!!! web0001 [04:28:54 2011] [error] [client 10.101.x.x] Gaaaaahhh!!! web0003 [04:28:54 2011] [error] [client 10.101.x.x] You've been eaten by a grue. web0066 [04:28:54 2011] [fatal] [client 10.101.x.x] Gaaaaahhh!!!
26.
Fatals
Errors Warnings
27.
StatsD
28.
StatsD::increment("logins.success"); StatsD::timing("gearman.time", $msec);
29.
90th pct
average lower StatsD::timing("gearman.time", $msec);
30.
Ad hoc name value
timestampn
31.
echo "events.deploy.site 1
`date +%s`" | nc graphite.etsycorp.com 2003
32.
Trends + Events target=drawAsInfinite(events.deploy.site)
33.
What Happened?
34.
16,000 metrics in
Graphite (plus 32,000 metrics in Ganglia)
35.
Dashboards
36.
Mix & Match Dashboards
37.
Hard <a href="http://graphite.etsycorp.com/render?from=-1hours&width=800&height=600&title=File+or +Script+Not+Found&yMin=0&target=webs.errorLog.notExist&target=drawAsInfinite %28deploys.config.production%29&target=drawAsInfinite%28deploys.web.production %29&target=drawAsInfinite%28deploys.search.production%29&target=drawAsInfinite %28deploys.imagestorage.other%29&colorList=%2300cc00,%230000ff, %23ff0000,%23006633,%23cc6600">
<img src="http://graphite.etsycorp.com/render? from=-1hours&width=280&height=220&title=File+or+Script+Not +Found&hideLegend=1&yMin=0&target=webs.errorLog.notExist&target=drawAsInfinite %28deploys.config.production%29&target=drawAsInfinite%28deploys.web.production %29&target=drawAsInfinite%28deploys.search.production%29&target=drawAsInfinite %28deploys.imagestorage.other%29&colorList=%2300cc00,%230000ff, %23ff0000,%23006633,%23cc6600"> </a>
38.
Easy $g = new
Graphite($time); $g->setTitle('File Not Found'); $g->addMetric('webs.errorLog.notExist', '#00cc00'); $g->showDeploys(true); echo $g->getDashboardHTML(280, 220);
39.
20 dashboards by
25 engineers
40.
Application health correlated with
events
41.
High-level visibility
42.
Low MTTD
43.
Validation
44.
Confidence
45.
codeascraft.etsy.com github.com/etsy/statsd github.com/etsy/logster bitbucket.org/maplebed/ganglia-logtailer
46.
Q&A Does this sound
like fun? Get in touch with us. chad@etsy.com kellan@etsy.com kastner@etsy.com mike@etsy.com
Baixar agora