statsd eskimi

31
StatsD ir Graphite Mantas Šidlauskas http://www.linkedin.com/in/mantassidlauskas [email protected]

Upload: mantas-sidlauskas

Post on 15-Jan-2015

499 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Statsd eskimi

StatsD ir Graphite

Mantas Šidlauskashttp://www.linkedin.com/in/[email protected]

Page 2: Statsd eskimi

eskimi.com

~11m narių~1mlrd atvertimų

Page 3: Statsd eskimi

Nigeria

Page 4: Statsd eskimi

eskimi.com

Page 5: Statsd eskimi

API Jabber J2ME Mobile apps WEB

Page 6: Statsd eskimi

eskimi.com

● PHP● MySQL (sharding, InnoDB compressions)● Memcached● Sphinx● Erlang

Page 7: Statsd eskimi
Page 8: Statsd eskimi

Kaip tai veikia?

StatsD Carbon Whisper

Page 9: Statsd eskimi

StatsD

● Node.js demonas● UDP!● Agreguoja, siunčia į carbon● Third-party backends: mongo, ganglia, ...● Metrikos: increment, gauge, timing, set

Page 10: Statsd eskimi

carbon, whisper

● carbon – priima duomenis per tcp, agreguoja.retentions = 10:2160,60:10080,600:262974

● whisper – DB, saugo “time-series data”.

Page 11: Statsd eskimi

Naudojam

statsd::increment('user.WrongPass');

Page 12: Statsd eskimi

Naudojam

statsd::increment('user.WrongPass');

Page 13: Statsd eskimi

Naudojam

statsd::gauge('users.online', $online);

Page 14: Statsd eskimi

Naudojam

statsd::gauge('users.online', $online);

Page 15: Statsd eskimi

Naudojam

statsd::timing('Timing . '.$this->alias, $loadTime);

Page 16: Statsd eskimi

Naudojam

statsd::timing('Timing . '.$this->alias, $loadTime);

Page 17: Statsd eskimi

URL API

render?width=400&from=-6hours&height=250&target=stats.timers.members.lower&target=stats.timers.members.mean&target=stats.timers.members.upper_90

Page 18: Statsd eskimi

Graphite dashboard

Page 19: Statsd eskimi

Graphite funkcijos

● alias()● summarize(), ● movingAverage()● timeShift()● drawAsInfinite()

Page 20: Statsd eskimi

summarize()

Page 21: Statsd eskimi

movingAverage()

Page 22: Statsd eskimi

timeShift()

Page 23: Statsd eskimi

drawAsInfinite()

Page 24: Statsd eskimi

Kas matosi #1

2

Page 25: Statsd eskimi

Kas matosi #2

Page 26: Statsd eskimi

Kas matosi #3

nginx log

SetOutputFilter DEFLATE

Page 27: Statsd eskimi

Kas matosi #4

Page 28: Statsd eskimi

Kas matosi #5

Pageviews

Nginx time

Page 29: Statsd eskimi

Kiti būdai

● Logster (nginx, apache_note())● nc● Logstash

Page 30: Statsd eskimi

Links

● https://github.com/etsy/statsd/● https://github.com/etsy/logster● http://graphite.wikidot.com/● http://graphite.readthedocs.org/

Page 31: Statsd eskimi

Ačiū

Klausimai?