SlideShare a Scribd company logo
1 of 82
Download to read offline
Metrics-DrivenEngineering
Mike Brittain
ENGINEERING DIRECTOR, ETSY
@mikebrittain
PROCESSANDTOOLS
SupportingacultureofContinuousDeployment
Howmanynewvisitors?
Howmanylistingscreated?
Howmanyregistrations?
HowdopeopleuseEtsy?
Howmanymessagessent?
Howmanypurchases?
Howmanynewshops?
Searchindexing?
Howfastarepagesgenerating?
Asynctaskscurrentlyinqueue?
Howistheapplicationbehaving?
DeveloperAPIauthandratelimiting?
Imagesresizedandstored?
Errorandwarningrates?
Replicationslavelag?
Memcachehits/misses?
Availableconnections?
AretheserversandnetworkOK?
Databasequeriespersecond?
Totaloutgoingbandwidth?
CPU,Memory,I/O?
BusinessMetrics
ApplicationMetrics
SystemMetrics
SystemMetrics
VisibilityEVERYWHERE
Metricshelpyouidentifygoals
Metricshelpyouidentifygoals
...butalsotellyouwhenyou’vebrokensomething.
AlwaysBeShipping
credit: ibailemon (flickr)
1st day
Putyourselfonthewebsite.
2nd day
Completetax,insurance,and
benefitsforms.
credit: ktpupp (flickr)
DevSandbox Trunk/master Production
You!
Test
7e9a814 -> 63a2bb3
Deploy to Production
50+Deploys/day
200+Committers
15Productteams
8Infrastructureteams
50+Deploys/day
credit: misswired (flickr)
credit: digidave (flickr)
PeerReview
Codereviews,Architecturereviews,Operabilityreviews
AutomatedTests
Staticanalysis,Unittests,Integrationtests,Functionaltests
May2013
$102.9Millioningoodsold
1.37Billionpageviews
https://www.etsy.com/blog/news/2013/etsy-statistics-may-2013-weather-report/
Failureisnotanoption
Failureisnotanoption
inevitable
Failureisnotanoption
anddetectable!
inevitable
Access
Soundslikealotofwork,who’sgoingto
buildallofthis?
Q:
Well,theOpsteammanagesthenetwork,racks
theservers,installedthemonitoringtools,wears
thepagers,blah,blah,blah...
A:
Soundslikealotofwork,who’sgoingto
buildallofthis?
Q:
Engineersbuildtheapplication
OPS
Logging
Graphing
Trending
Alerting
ENG
Metricsarepartofeveryfeature
(andsoareconfigflags)
MakeitDEADSIMPLE
Ganglia (application,servers,network)
Logster* (application,servers)
Cacti (network,SNMP)
FITB* (network)
*github.com/etsy
Simple,open-sourcetools
Graphite (application)
Statsd* (application)
Logformats (application,servers)
Nagios (alerting)
Ganglia
Cluster-oriented
Hugecommunitycontributedrecipes
Custommetrics(gmetad)
Ganglia
Graphite
Single-instance
Createnewmetricson-the-fly
CustomizeviaURLsanddisplayfunctions
http://www.aosabook.org/en/graphite.html
Graphite
LogFormats
Time, remote address, http method, request uri, referrer, user-agent,
response size, response code, execution time, memory consumed,
plus custom fields...
• Signed-in/out (user_id vs. “-”)
• display mode (“desktop” vs. “mobile”)
• i10n/i18n (“en-US”)
• etc.
AccessLogs
LogFormat %l %t "%r" %>s %b "%{Referer}i"
"%{User-Agent}i" %{custom_field}n ...
apache_note(“custom_field”, $whatever);
LogFormat "%{True-Client-IP}i %l %u %t "%r" %>s %b
"%{Referer}i" "%{User-Agent}i"
%{display_mode}n %{user_id}n %{php_bytes}n %{php_usec}n %D”
web0060 66.249.71.110 - - [11/May/2011:17:08:53 +0000] "GET /
listing/12189259/tropical-etched-pair-of-lampwork-glass HTTP/1.1"
200 11034 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://
www.google.com/bot.html)" desktop - 13399576 505780 554876
LogFormat "%{True-Client-IP}i %l %u %t "%r" %>s %b
"%{Referer}i" "%{User-Agent}i"
%{display_mode}n %{user_id}n %{php_bytes}n %{php_usec}n %D”
web0060 66.249.71.110 - - [11/May/2011:17:08:53 +0000] "GET /
listing/12189259/tropical-etched-pair-of-lampwork-glass HTTP/1.1"
200 11034 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://
www.google.com/bot.html)" desktop - 13399576 505780 554876
Logger::error("User login failed. Reason:
$msg for $email_addr", “login”);
Methodnamedenoteslog“level”—
error,fatal,warning,notice,debug.
A“namespace”parameterisprovided
sowecanaggregatelogentrieswith
similarconcerns.
Logger::error("User login failed. Reason:
$msg for $email_addr", “login”);
web0054 [Fri Mar 04 16:27:48 2011] [error] [login]
[mk04gw1p71] User login failed. Reason: wrong
password was submitted for mike@etsy.com
UniquerequestID
Servername
Dateandtime Level
Namespace
web0054 [Fri Mar 04 16:27:48 2011] [error] [login] [mk04gw1p71] Invalid charset conve
web0102 [Fri Mar 04 16:27:48 2011] [warning] [login] [47dd608551] User login failed.
web0012 [Fri Mar 04 16:27:48 2011] [warning] [login] [mk04gw1p71] User login failed.
web0081 [Fri Mar 04 16:27:48 2011] [error] [register] [39e08e6692] Duplicate user ID
web0100 [Fri Mar 04 16:27:49 2011] [fatal] [register] [f9c2b23702] Invalid charset co
web0003 [Fri Mar 04 16:27:49 2011] [error] [register] [39e08e6692] Duplicate user ID
web0050 [Fri Mar 04 16:27:49 2011] [error] [register] [2e468a9bb6] Duplicate user ID
web0054 [Fri Mar 04 16:27:49 2011] [warning] [login] [mk04gw1p71] User login failed.
web0200 [Fri Mar 04 16:27:49 2011] [error] [login] [f9c2b23702] User login failed. Re
web0064 [Fri Mar 04 16:27:49 2011] [error] [login] [47dd608551] Duplicate user ID enc
web0012 [Fri Mar 04 16:27:49 2011] [warning] [login] [32976da59c] User login failed.
web0041 [Fri Mar 04 16:27:49 2011] [fatal] [login] [mk04gw1p71] Invalid charset conve
web0012 [Fri Mar 04 16:27:49 2011] [error] [login] [2f297b40a5] User login failed. Re
web0025 [Fri Mar 04 16:27:49 2011] [warning] [register] [32976da59c] User login faile
web0088 [Fri Mar 04 16:27:49 2011] [warning] [register] [2e468a9bb6] User login faile
web0050 [Fri Mar 04 16:27:50 2011] [warning] [register] [39e08e6692] User login faile
web0035 [Fri Mar 04 16:27:50 2011] [warning] [login] [2f297b40a5] User login failed.
web0072 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [2f297b40a5] User login failed
web0050 [Fri Mar 04 16:27:50 2011] [error] [login] [2e468a9bb6] User login failed. Re
web0054 [Fri Mar 04 16:27:50 2011] [warning] [login] [mk04gw1p71] User login failed.
web0200 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [f9c2b23702] User login failed
web0064 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [47dd608551] Invalid charset c
web0012 [Fri Mar 04 16:27:50 2011] [warning] [login] [32976da59c] User login failed.
web0041 [Fri Mar 04 16:27:50 2011] [fatal] [login] [mk04gw1p71] Invalid charset conve
web0012 [Fri Mar 04 16:27:50 2011] [error] [register] [2f297b40a5] Duplicate user ID
web0025 [Fri Mar 04 16:27:50 2011] [warning] [login] [32976da59c] User login failed.
web0088 [Fri Mar 04 16:27:50 2011] [warning] [login] [2e468a9bb6] User login failed.
web0050 [Fri Mar 04 16:27:51 2011] [warning] [login] [39e08e6692] User login failed.
web0035 [Fri Mar 04 16:27:51 2011] [warning] [login] [2f297b40a5] User login failed.
web0072 [Fri Mar 04 16:27:51 2011] [error] [login] [2f297b40a5] User login failed. Re
web0054 [Fri Mar 04 16:27:48 2011] [error] [login] [mk04gw1p71] Invalid charset conve
web0102 [Fri Mar 04 16:27:48 2011] [warning] [login] [47dd608551] User login failed.
web0012 [Fri Mar 04 16:27:48 2011] [warning] [login] [mk04gw1p71] User login failed.
web0081 [Fri Mar 04 16:27:48 2011] [error] [register] [39e08e6692] Duplicate user ID
web0100 [Fri Mar 04 16:27:49 2011] [fatal] [register] [f9c2b23702] Invalid charset co
web0003 [Fri Mar 04 16:27:49 2011] [error] [register] [39e08e6692] Duplicate user ID
web0050 [Fri Mar 04 16:27:49 2011] [error] [register] [2e468a9bb6] Duplicate user ID
web0054 [Fri Mar 04 16:27:49 2011] [warning] [login] [mk04gw1p71] User login failed.
web0200 [Fri Mar 04 16:27:49 2011] [error] [login] [f9c2b23702] User login failed. Re
web0064 [Fri Mar 04 16:27:49 2011] [error] [login] [47dd608551] Duplicate user ID enc
web0012 [Fri Mar 04 16:27:49 2011] [warning] [login] [32976da59c] User login failed.
web0041 [Fri Mar 04 16:27:49 2011] [fatal] [login] [mk04gw1p71] Invalid charset conve
web0012 [Fri Mar 04 16:27:49 2011] [error] [login] [2f297b40a5] User login failed. Re
web0025 [Fri Mar 04 16:27:49 2011] [warning] [register] [32976da59c] User login faile
web0088 [Fri Mar 04 16:27:49 2011] [warning] [register] [2e468a9bb6] User login faile
web0050 [Fri Mar 04 16:27:50 2011] [warning] [register] [39e08e6692] User login faile
web0035 [Fri Mar 04 16:27:50 2011] [warning] [login] [2f297b40a5] User login failed.
web0072 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [2f297b40a5] User login failed
web0050 [Fri Mar 04 16:27:50 2011] [error] [login] [2e468a9bb6] User login failed. Re
web0054 [Fri Mar 04 16:27:50 2011] [warning] [login] [mk04gw1p71] User login failed.
web0200 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [f9c2b23702] User login failed
web0064 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [47dd608551] Invalid charset c
web0012 [Fri Mar 04 16:27:50 2011] [warning] [login] [32976da59c] User login failed.
web0041 [Fri Mar 04 16:27:50 2011] [fatal] [login] [mk04gw1p71] Invalid charset conve
web0012 [Fri Mar 04 16:27:50 2011] [error] [register] [2f297b40a5] Duplicate user ID
web0025 [Fri Mar 04 16:27:50 2011] [warning] [login] [32976da59c] User login failed.
web0088 [Fri Mar 04 16:27:50 2011] [warning] [login] [2e468a9bb6] User login failed.
web0050 [Fri Mar 04 16:27:51 2011] [warning] [login] [39e08e6692] User login failed.
web0035 [Fri Mar 04 16:27:51 2011] [warning] [login] [2f297b40a5] User login failed.
web0072 [Fri Mar 04 16:27:51 2011] [error] [login] [2f297b40a5] User login failed. Re
web0054 [Fri Mar 04 16:27:48 2011] [error] [login] [mk04gw1p71] Invalid charset conve
web0102 [Fri Mar 04 16:27:48 2011] [warning] [login] [47dd608551] User login failed.
web0012 [Fri Mar 04 16:27:48 2011] [warning] [login] [mk04gw1p71] User login failed.
web0081 [Fri Mar 04 16:27:48 2011] [error] [register] [39e08e6692] Duplicate user ID
web0100 [Fri Mar 04 16:27:49 2011] [fatal] [register] [f9c2b23702] Invalid charset co
web0003 [Fri Mar 04 16:27:49 2011] [error] [register] [39e08e6692] Duplicate user ID
web0050 [Fri Mar 04 16:27:49 2011] [error] [register] [2e468a9bb6] Duplicate user ID
web0054 [Fri Mar 04 16:27:49 2011] [warning] [login] [mk04gw1p71] User login failed.
web0200 [Fri Mar 04 16:27:49 2011] [error] [login] [f9c2b23702] User login failed. Re
web0064 [Fri Mar 04 16:27:49 2011] [error] [login] [47dd608551] Duplicate user ID enc
web0012 [Fri Mar 04 16:27:49 2011] [warning] [login] [32976da59c] User login failed.
web0041 [Fri Mar 04 16:27:49 2011] [fatal] [login] [mk04gw1p71] Invalid charset conve
web0012 [Fri Mar 04 16:27:49 2011] [error] [login] [2f297b40a5] User login failed. Re
web0025 [Fri Mar 04 16:27:49 2011] [warning] [register] [32976da59c] User login faile
web0088 [Fri Mar 04 16:27:49 2011] [warning] [register] [2e468a9bb6] User login faile
web0050 [Fri Mar 04 16:27:50 2011] [warning] [register] [39e08e6692] User login faile
web0035 [Fri Mar 04 16:27:50 2011] [warning] [login] [2f297b40a5] User login failed.
web0072 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [2f297b40a5] User login failed
web0050 [Fri Mar 04 16:27:50 2011] [error] [login] [2e468a9bb6] User login failed. Re
web0054 [Fri Mar 04 16:27:50 2011] [warning] [login] [mk04gw1p71] User login failed.
web0200 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [f9c2b23702] User login failed
web0064 [Fri Mar 04 16:27:50 2011] [error] [subscribe] [47dd608551] Invalid charset c
web0012 [Fri Mar 04 16:27:50 2011] [warning] [login] [32976da59c] User login failed.
web0041 [Fri Mar 04 16:27:50 2011] [fatal] [login] [mk04gw1p71] Invalid charset conve
web0012 [Fri Mar 04 16:27:50 2011] [error] [register] [2f297b40a5] Duplicate user ID
web0025 [Fri Mar 04 16:27:50 2011] [warning] [login] [32976da59c] User login failed.
web0088 [Fri Mar 04 16:27:50 2011] [warning] [login] [2e468a9bb6] User login failed.
web0050 [Fri Mar 04 16:27:51 2011] [warning] [login] [39e08e6692] User login failed.
web0035 [Fri Mar 04 16:27:51 2011] [warning] [login] [2f297b40a5] User login failed.
web0072 [Fri Mar 04 16:27:51 2011] [error] [login] [2f297b40a5] User login failed. Re
FATALS ERRORS WARNINGS
Logster
github.com/etsy/logster
Runbycron(e.g.1mintervals)
Keeps acursoronyourlogfile
Parseandaggregatevalueshoweveryouwant
OutputtoGanglia,Graphite,AmazonCloudWatch
Simpleparsers
Logster
web0054 [Fri Mar 04 16:27:48 2011] [error] [login]
[mk04gw1p71] User login failed. Reason: wrong
password was submitted for mike@etsy.com
^.+ [.+] [(?P<log_level>.+)]
1.Patternmatchonfieldsofinterest
if (fields['log_level'] == “fatal”):
self.fatals += 1
elif (fields['log_level'] == “error”):
self.errors += 1
elif (fields['log_level'] == “warning”):
self.warnings += 1
...
2.Aggregatevalues (sum,average,percentile,etc.)
MetricObject("fatals",
(self.fatals / self.duration), "per sec")
MetricObject("errors",
(self.errors / self.duration), "per sec")
MetricObject("warning",
(self.warnings / self.duration), "per sec")
3.Sendthevaluesas“metricobjects”tothecollectors
github.com/etsy/logster
FATALS ERRORS WARNINGS
Logster
StatsD
github.com/etsy/statsd
StatsD
Networkdaemon(node.js)
AcceptsdataoverUDP
FlushestoGraphiteevery10sec
One-lineofcode
StatsD::increment("logins.success");
StatsD::increment("logins.success");
Logins
StatsD::timing("profile.time", $msec);
StatsD::timing("profile.time", $msec);
90thpct
average
lower
Adhoc
name value timestamp
echo "events.deploy.site 1 `date +%s`" 
| nc graphite.etsycorp.com 2003
VerticalLineTechnology!
target=drawAsInfinite(events.deploy.site)
User Logins
PHP Warnings
PHP Fatal Errors
250,000+metricsatEtsy
Systems,Applications,Business
github.com/etsy/dashboard
Dashboards
<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>
KindofHard :-/
github.com/etsy/dashboard
$g = new Graphite($time);
$g->setTitle('File Not Found');
$g->addMetric('webs.errorLog.notExist', '#00cc00');
echo $g->getDashboardHTML(280, 220);
SuperEasy!
github.com/etsy/dashboard
But,yousaid...
“250,000+metricsatEtsy”
Systems,Applications,Business
http://graphite/render?
from=-1hours&width=600&height=200
&target=webs.errorLog.warning&rawData=1
http://graphite/render?
from=-1hours&width=600&height=200
&target=webs.errorLog.warning&rawData=1
webs.errorLog.warning,1318444930,1318448530,60|
5.0,1.0,3.0,1.0,0.0,9.0,0.0,1.0,3.0,2.0,1.0,6.0,2.0,6.0,3.0,6.0,4.0,4.0,2.0,
1.0,1.0,8.0,2.0,3.0,6.0,3.0,5.0,3.0,0.0,4.0,6.0,2.0,0.0,2.0,0.0,4.0,0.0,3.0,
1.0,3.0,4.0,2.0,10.0,3.0,0.0,6.0,0.0,4.0,2.0,5.0,18.0,1.0,1.0,2.0,1.0,8.0,5.
0,1.0,1.0,None
Holt-WintersConfidenceBands
lower
upper
Holt-WintersAberration
Businessmetrics
+ Confidencebands
_____________
Alertablemetrics
Metrics!
Metrics+Events
Metrics+Alerts
Metrics+Metrics
High-level,real-timevisibility
Detectproblemsearly,
andresolvethemquickly.
Makethemaccessible
Makethemrequiredfeatures
Makethemdeadsimple
Merci!
These slides will be available at
mikebrittain.com/talks
codeascraft.etsy.com
github.com/etsy
Say“Hello!”
mike@etsy.com
@mikebrittain
Metrics-DrivenEngineering

More Related Content

Viewers also liked

Continuous Deployment: The Dirty Details
Continuous Deployment: The Dirty DetailsContinuous Deployment: The Dirty Details
Continuous Deployment: The Dirty DetailsMike Brittain
 
Web Performance Culture and Tools at Etsy
Web Performance Culture and Tools at EtsyWeb Performance Culture and Tools at Etsy
Web Performance Culture and Tools at EtsyMike Brittain
 
Simple Log Analysis and Trending
Simple Log Analysis and TrendingSimple Log Analysis and Trending
Simple Log Analysis and TrendingMike Brittain
 
On Failure and Resilience
On Failure and ResilienceOn Failure and Resilience
On Failure and ResilienceMike Brittain
 
Continuous Delivery: The Dirty Details
Continuous Delivery: The Dirty DetailsContinuous Delivery: The Dirty Details
Continuous Delivery: The Dirty DetailsMike Brittain
 
100+ Visual Quotes from Cannes Lions 2013
100+ Visual Quotes from Cannes Lions 2013100+ Visual Quotes from Cannes Lions 2013
100+ Visual Quotes from Cannes Lions 2013Alemsah Ozturk
 
From Building a Marketplace to Building Teams
From Building a Marketplace to Building TeamsFrom Building a Marketplace to Building Teams
From Building a Marketplace to Building TeamsMike Brittain
 
The Real Life Social Network v2
The Real Life Social Network v2The Real Life Social Network v2
The Real Life Social Network v2Paul Adams
 
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyMike Brittain
 
26 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 201826 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 2018Brian Solis
 

Viewers also liked (10)

Continuous Deployment: The Dirty Details
Continuous Deployment: The Dirty DetailsContinuous Deployment: The Dirty Details
Continuous Deployment: The Dirty Details
 
Web Performance Culture and Tools at Etsy
Web Performance Culture and Tools at EtsyWeb Performance Culture and Tools at Etsy
Web Performance Culture and Tools at Etsy
 
Simple Log Analysis and Trending
Simple Log Analysis and TrendingSimple Log Analysis and Trending
Simple Log Analysis and Trending
 
On Failure and Resilience
On Failure and ResilienceOn Failure and Resilience
On Failure and Resilience
 
Continuous Delivery: The Dirty Details
Continuous Delivery: The Dirty DetailsContinuous Delivery: The Dirty Details
Continuous Delivery: The Dirty Details
 
100+ Visual Quotes from Cannes Lions 2013
100+ Visual Quotes from Cannes Lions 2013100+ Visual Quotes from Cannes Lions 2013
100+ Visual Quotes from Cannes Lions 2013
 
From Building a Marketplace to Building Teams
From Building a Marketplace to Building TeamsFrom Building a Marketplace to Building Teams
From Building a Marketplace to Building Teams
 
The Real Life Social Network v2
The Real Life Social Network v2The 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 EtsyPrinciples 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 - 201826 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 2018
 

Recently uploaded

So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
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.pptxThe 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.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 

Recently uploaded (20)

So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
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.pptxThe 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
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 

Metrics Driven Engineering