SlideShare a Scribd company logo
1 of 48
Download to read offline
StatsD + Graphite + Seyren…
или
Cобираем будильник
правильно
11 МАРТА 2016
- Татьяна Боровкова
- Java-разработчик
- EPAM
- 
Модель «Будильник»
StatsD
Graphite
Seyren
Эволюция идеи
О чем я расскажу?
Всегда разрабатывайте продукт так, как
будто ваш заказчик – склонный к насилию
психопат, который знает, где вы живете.
,,
Винни Пух
I. Часовой механизм
− Сбор статистики
I. Часовой механизм
− Сбор статистики
II. Корпус и циферблат
− Отображение и хранение
статистики
I. Часовой механизм
− Сбор статистики
III. Звонок
− Система оповещения
II. Корпус и циферблат
− Отображение и хранение
статистики
I. Часовой механизм
III. Звонок
II. Корпус и циферблат
STATSD
SEYREN
GRAPHITE
T
- Числовые данные, меняющиеся с
течением времени
- Время ответа ресурса, количество
запросов и т.п.
- Нужен идентификатор данных (ключ)
T
T
T
- Демон, запускаемый на node.js
- Использует TCP или UDP
- Агрегирует статистику с
определенной частотой
- Отправляет результаты в
подключенные backend-сервисы
STATSD https://github.com/etsy/statsd
Измерение
Виды StatsD статистики
Счетчик МножествоТаймер
Counter Timer Set Gauge
Как установить?
Как установить?
1. Установить
Как установить?
1. Установить
2. Склонировать проект с
3. Создать конфигурационный файл
с помощью exampleConfig.js
Как установить?
1. Установить
2. Склонировать проект с
3. Создать конфигурационный файл
с помощью exampleConfig.js
4. Запустить демона:
node stats.js /путь/к/конфигурации
Как установить?
1. Установить
2. Склонировать проект с
> echo "Пример отправки сообщения в StatsD"
>
> echo "Пример отправки сообщения в StatsD"
> echo "test.counter:1|c" | nc -u -w0 127.0.0.1 8125
>
> echo "Пример отправки сообщения в StatsD"
> echo "test.counter:1|c" | nc -u -w0 127.0.0.1 8125
>
ключ.с.поддоменами : числовое_значение | тип_статистики
T
Главная задача Graphite – хранение и
визуализация статистических данных
CARBON WHISPER
WEBAPP
Принимает пакеты со StatsD База данных, хранящая пары
«метка времени-значение»
Отображает полученные данные
в виде временных графиков
Как установить?
UNIX-подобная OC
Python 2.6+
Pycairo
Django 1.4+
django-tagging 0.3.1+
WSGI server
web server
database
Как установить?
Главная задача Seyren – вовремя «разбудить»
T
> java -version
> mongo -version
>
Как установить?
> java -version
> mongo -version
> wget https://github.com/.../seyren-1.3.0.jar
>
Как установить?
> java -version
> mongo -version
> wget https://github.com/.../seyren-1.3.0.jar
> export GRAPHITE_URL=http://graphite.foohost.com:80
>
Как установить?
> java -version
> mongo -version
> wget https://github.com/.../seyren-1.3.0.jar
> export GRAPHITE_URL=http://graphite.foohost.com:80
> java -jar seyren-1.3.0.jar
>
Как установить?
> java -version
> mongo -version
> wget https://github.com/.../seyren-1.3.0.jar
> export GRAPHITE_URL=http://graphite.foohost.com:80
> java -jar seyren-1.3.0.jar
> open http://localhost:8080
>
Как установить?
I. Часовой механизм
III. Звонок
II. Корпус и циферблат
STATSD
SEYREN
GRAPHITESTATSD GRAPHITE
SEYREN
I. Часовой механизм
III. Звонок
II. Корпус и циферблат
STATSD
SEYREN
GRAPHITESTATSD GRAPHITE
SEYREN
- CollectD
- Jmx2graphite
- Logster
I. Часовой механизм
III. Звонок
II. Корпус и циферблат
STATSD
SEYREN
GRAPHITESTATSD GRAPHITE
SEYREN
- CollectD
- Jmx2graphite
- Logster
- Giraffe
- Grafana
- Dusk
I. Часовой механизм
III. Звонок
II. Корпус и циферблат
STATSD
SEYREN
GRAPHITESTATSD GRAPHITE
SEYREN
- CollectD
- Jmx2graphite
- Logster
- Cabot
- Moira
- Giraffe
- Grafana
- Dusk
Приятного пробуждения! 
Собираем будильник правильно

More Related Content

Viewers also liked

Соревнования по программированию
Соревнования по программированиюСоревнования по программированию
Соревнования по программированию
Vitebsk Miniq
 
ES2015+: давно пора!
ES2015+: давно пора!ES2015+: давно пора!
ES2015+: давно пора!
Vitebsk Miniq
 

Viewers also liked (8)

Тестируем тесты с PIT (мутационное тестирование)
Тестируем тесты с PIT (мутационное тестирование)Тестируем тесты с PIT (мутационное тестирование)
Тестируем тесты с PIT (мутационное тестирование)
 
Blockchain: is just buzzword?
Blockchain: is just buzzword?Blockchain: is just buzzword?
Blockchain: is just buzzword?
 
Соревнования по программированию
Соревнования по программированиюСоревнования по программированию
Соревнования по программированию
 
Строим плот - Как не утонуть в данных
Строим плот - Как не утонуть в данныхСтроим плот - Как не утонуть в данных
Строим плот - Как не утонуть в данных
 
Разработка в долг
Разработка в долгРазработка в долг
Разработка в долг
 
ES2015+: давно пора!
ES2015+: давно пора!ES2015+: давно пора!
ES2015+: давно пора!
 
TEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkTEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of Work
 
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareSTOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
 

Similar to Собираем будильник правильно

МРТ для данных, Frontend Conf 2016
МРТ для данных, Frontend Conf 2016МРТ для данных, Frontend Conf 2016
МРТ для данных, Frontend Conf 2016
Anastasia Goryacheva
 
МРТ для данных / Анастасия Горячева (Avito)
МРТ для данных / Анастасия Горячева (Avito)МРТ для данных / Анастасия Горячева (Avito)
МРТ для данных / Анастасия Горячева (Avito)
Ontico
 
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центрМониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
sportgid
 
Pavel Dovbush Toster
Pavel Dovbush Toster Pavel Dovbush Toster
Pavel Dovbush Toster
Pavel Dovbush
 
Coub - как мы строили аналитическую платформу на несколько миллиардов событий...
Coub - как мы строили аналитическую платформу на несколько миллиардов событий...Coub - как мы строили аналитическую платформу на несколько миллиардов событий...
Coub - как мы строили аналитическую платформу на несколько миллиардов событий...
Ontico
 
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяцКак мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Mikhail Tabunov
 
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
it-people
 
[1.3] Мониторинг событий ИБ — мастерим «дашборд» - Тарас Иващенко
[1.3] Мониторинг событий ИБ — мастерим «дашборд» - Тарас Иващенко[1.3] Мониторинг событий ИБ — мастерим «дашборд» - Тарас Иващенко
[1.3] Мониторинг событий ИБ — мастерим «дашборд» - Тарас Иващенко
OWASP Russia
 
Потоковая обработка событий клиентов и их отображение на интерактивной карте
Потоковая обработка событий клиентов и их отображение на интерактивной картеПотоковая обработка событий клиентов и их отображение на интерактивной карте
Потоковая обработка событий клиентов и их отображение на интерактивной карте
Voximplant
 
дерюшкин Agile vector
дерюшкин   Agile vectorдерюшкин   Agile vector
дерюшкин Agile vector
Magneta AI
 

Similar to Собираем будильник правильно (20)

Grpahite&grafana
Grpahite&grafanaGrpahite&grafana
Grpahite&grafana
 
Я построю свой профайлер!
Я построю свой профайлер!Я построю свой профайлер!
Я построю свой профайлер!
 
МРТ для данных, Frontend Conf 2016
МРТ для данных, Frontend Conf 2016МРТ для данных, Frontend Conf 2016
МРТ для данных, Frontend Conf 2016
 
МРТ для данных / Анастасия Горячева (Avito)
МРТ для данных / Анастасия Горячева (Avito)МРТ для данных / Анастасия Горячева (Avito)
МРТ для данных / Анастасия Горячева (Avito)
 
Анализируем данные с Clickhouse
Анализируем данные с  ClickhouseАнализируем данные с  Clickhouse
Анализируем данные с Clickhouse
 
Tech day armenia for developers
Tech day armenia   for developersTech day armenia   for developers
Tech day armenia for developers
 
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центрМониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
 
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
Оптимизация работы с данными в мобильных приложениях / Святослав Иванов, Артё...
 
Pavel Dovbush Toster
Pavel Dovbush Toster Pavel Dovbush Toster
Pavel Dovbush Toster
 
Cisco Threat Defense (Cisco Stealthwatch)
Cisco Threat Defense (Cisco Stealthwatch)Cisco Threat Defense (Cisco Stealthwatch)
Cisco Threat Defense (Cisco Stealthwatch)
 
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
 
Kuznetcov
KuznetcovKuznetcov
Kuznetcov
 
Coub - как мы строили аналитическую платформу на несколько миллиардов событий...
Coub - как мы строили аналитическую платформу на несколько миллиардов событий...Coub - как мы строили аналитическую платформу на несколько миллиардов событий...
Coub - как мы строили аналитическую платформу на несколько миллиардов событий...
 
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяцКак мы строили аналитическую платформу на несколько миллиардов событии в месяц
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
 
Presty
PrestyPresty
Presty
 
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН«Тотальный контроль производительности» Михаил Юматов, ЦИАН
«Тотальный контроль производительности» Михаил Юматов, ЦИАН
 
[1.3] Мониторинг событий ИБ — мастерим «дашборд» - Тарас Иващенко
[1.3] Мониторинг событий ИБ — мастерим «дашборд» - Тарас Иващенко[1.3] Мониторинг событий ИБ — мастерим «дашборд» - Тарас Иващенко
[1.3] Мониторинг событий ИБ — мастерим «дашборд» - Тарас Иващенко
 
Потоковая обработка событий клиентов и их отображение на интерактивной карте
Потоковая обработка событий клиентов и их отображение на интерактивной картеПотоковая обработка событий клиентов и их отображение на интерактивной карте
Потоковая обработка событий клиентов и их отображение на интерактивной карте
 
дерюшкин Agile vector
дерюшкин   Agile vectorдерюшкин   Agile vector
дерюшкин Agile vector
 
Agile Vector - внедрение agile разработки в Райффайзенбанке
Agile Vector - внедрение agile разработки в РайффайзенбанкеAgile Vector - внедрение agile разработки в Райффайзенбанке
Agile Vector - внедрение agile разработки в Райффайзенбанке
 

More from Vitebsk Miniq

The 5 Laws of Software Estimates
The 5 Laws of Software EstimatesThe 5 Laws of Software Estimates
The 5 Laws of Software Estimates
Vitebsk Miniq
 

More from Vitebsk Miniq (20)

Runtime compilation and code execution in groovy
Runtime compilation and code execution in groovyRuntime compilation and code execution in groovy
Runtime compilation and code execution in groovy
 
The 5 Laws of Software Estimates
The 5 Laws of Software EstimatesThe 5 Laws of Software Estimates
The 5 Laws of Software Estimates
 
Latest & Greatest Observability Release 7.9
Latest & Greatest Observability Release 7.9Latest & Greatest Observability Release 7.9
Latest & Greatest Observability Release 7.9
 
Тестирование Spring-based приложений
Тестирование Spring-based приложенийТестирование Spring-based приложений
Тестирование Spring-based приложений
 
Семантический поиск - что это, как работает и чем отличается от просто поиска
Семантический поиск - что это, как работает и чем отличается от просто поискаСемантический поиск - что это, как работает и чем отличается от просто поиска
Семантический поиск - что это, как работает и чем отличается от просто поиска
 
Локализационное тестирование - это не только перевод
Локализационное тестирование - это не только переводЛокализационное тестирование - это не только перевод
Локализационное тестирование - это не только перевод
 
ISTQB Сертификация тестировщиков: быть или не быть?
ISTQB Сертификация тестировщиков: быть или не быть?ISTQB Сертификация тестировщиков: быть или не быть?
ISTQB Сертификация тестировщиков: быть или не быть?
 
Apollo GraphQL Federation
Apollo GraphQL FederationApollo GraphQL Federation
Apollo GraphQL Federation
 
Who is a functional tester
Who is a functional testerWho is a functional tester
Who is a functional tester
 
Crawling healthy
Crawling healthyCrawling healthy
Crawling healthy
 
Вперед в прошлое
Вперед в прошлоеВперед в прошлое
Вперед в прошлое
 
CloudFormation experience
CloudFormation experienceCloudFormation experience
CloudFormation experience
 
Learning Intelligence: the story of mine
Learning Intelligence: the story of mineLearning Intelligence: the story of mine
Learning Intelligence: the story of mine
 
Как программисты могут спасти мир
Как программисты могут спасти мирКак программисты могут спасти мир
Как программисты могут спасти мир
 
Использование AzureDevOps при разработке микросервисных приложений
Использование AzureDevOps при разработке микросервисных приложенийИспользование AzureDevOps при разработке микросервисных приложений
Использование AzureDevOps при разработке микросервисных приложений
 
Distributed tracing system in action. Instana Tracing.
Distributed tracing system in action. Instana Tracing.Distributed tracing system in action. Instana Tracing.
Distributed tracing system in action. Instana Tracing.
 
Насорил - убери!
Насорил - убери!Насорил - убери!
Насорил - убери!
 
Styled-components. Что? Когда? И зачем?
Styled-components. Что? Когда? И зачем?Styled-components. Что? Когда? И зачем?
Styled-components. Что? Когда? И зачем?
 
Красные флаги и розовые очки
Красные флаги и розовые очкиКрасные флаги и розовые очки
Красные флаги и розовые очки
 
CSS. Практика
CSS. ПрактикаCSS. Практика
CSS. Практика
 

Собираем будильник правильно