Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Киев 2016
Первый в Украине фестиваль тестирования
Система мониторинга
производительности своими
руками
Александр Неделяев
Киев 2016
О себе
nedeliaev@gmail.com
nedeliaev
Alexander Nedeliaev
Система мониторинга производительности своими руками
Киев 2016
С чего все началось
Система мониторинга производительности своими руками
Киев 2016
Слои мониторинга
•OS
•CRM
•ERP
•Email
Application
•Database: Oracle, SQL Server, MySQL
•Web servers: IIS, Apache...
Киев 2016
Слои мониторинга
•OS
•CRM
•ERP
•Email
Application
•Database: Oracle, SQL Server, MySQL
•Web servers: IIS, Apache...
Киев 2016
Готовые решения APM
Система мониторинга производительности своими руками
Киев 2016
Почему нет?
• Масштабность
• Неготовность приложения
• Целесообразность
• Стоимость
Система мониторинга производ...
Киев 2016
Кастомное решение
Система мониторинга производительности своими руками
Киев 2016
Отправная точка
Система мониторинга производительности своими руками
http://jmeter.apache.org/usermanual/realtim...
Киев 2016
Что лежит в основе
мониторинга?
Система мониторинга производительности своими руками
 Метрика
 Значение
 Отме...
Киев 2016
Временные ряды
Система мониторинга производительности своими руками
Киев 2016
В чем недостаток JMeter
 Чрезмерное потребление ресурсов
 Слабая визуализация результатов
 Фрагментарность
 ...
Киев 2016
Инструменты
Система мониторинга производительности своими руками
Киев 2016
Структура
 Сбор данных из различных источников
 Запись и хранение данных в базе
 Визуализация данных
 Оповещ...
Киев 2016
Структура
Система мониторинга производительности своими руками
Киев 2016
Визуализация
Система мониторинга производительности своими руками
Киев 2016
План
Система мониторинга производительности своими руками
Киев 2016
Установка и конфигурация
Система мониторинга производительности своими руками
https://docs.docker.com
https://hu...
Киев 2016
Команды Docker
• docker pull [image]
• docker run -d -e [environmentVariable] -p [ports]
• docker start / stop [...
Киев 2016
Установка InfluxDB и Grafana
Система мониторинга производительности своими руками
Из папки проекта: docker-compo...
Киев 2016
Настраиваем JMeter
Система мониторинга производительности своими руками
http://jmeter.apache.org/usermanual/real...
Киев 2016
Настраиваем Grafana
Система мониторинга производительности своими руками
Киев 2016
Что я хочу видеть
Система мониторинга производительности своими руками
Киев 2016
Что я хочу видеть
 Инфраструктурные метрики
 Метрики производительности приложения
 События
 Сравнительный а...
Киев 2016
Что я хочу видеть
 Инфраструктурные метрики
 Метрики производительности приложения
 События
 Сравнительный а...
Киев 2016
Инфраструктурные метрики -
Linux
CollectD:
• CPU used/ free/ idle/ etc
• Free disk (via mounting hosts '/' into ...
Киев 2016
Инфраструктурные метрики -
Windows
Система мониторинга производительности своими руками
https://hodgkins.io/usin...
Киев 2016
Что я хочу видеть
 Инфраструктурные метрики
 Метрики производительности приложения
 События
 Сравнительный а...
Киев 2016
Метрики производительности
приложения
<rootMetricsPrefix>test.minAT
Min active threads
<rootMetricsPrefix>test.m...
Киев 2016
<rootMetricsPrefix><samplerName>.a.count
Number of responses for sampler name
<rootMetricsPrefix><samplerName>.a...
Киев 2016
Запускаем Jmeter тест
Система мониторинга производительности своими руками
jmeter -n -t your_script.jmx
где
-n: ...
Киев 2016
Проверяем данные в InfluxDB
Система мониторинга производительности своими руками
http://<docker-machine ip>:8083
Киев 2016
Создаем Grafana dashboard
Система мониторинга производительности своими руками
http://<docker-machine ip>:3000/d...
Киев 2016
Добавляем графики
Система мониторинга производительности своими руками
Киев 2016
Настраиваем графики
Система мониторинга производительности своими руками
Киев 2016
Настраиваем графики
Система мониторинга производительности своими руками
Киев 2016
Улучшаем графики
Система мониторинга производительности своими руками
Киев 2016
Устанавливаем зависимости
Система мониторинга производительности своими руками
Киев 2016
Параметры отображения
Система мониторинга производительности своими руками
Киев 2016
Что я хочу видеть
 Инфраструктурные метрики
 Метрики производительности приложения
 События
 Сравнительный а...
Киев 2016
Аннотации
Система мониторинга производительности своими руками
curl -i -XPOST 'http://<docker-machine ip>:8086/w...
Киев 2016
Аннотации
Система мониторинга производительности своими руками
Киев 2016
Что я хочу видеть
 Инфраструктурные метрики
 Метрики производительности приложения
 События
 Сравнительный а...
Киев 2016
Сравнительный анализ данных
Система мониторинга производительности своими руками
Киев 2016
Что я хочу видеть
 Инфраструктурные метрики
 Метрики производительности приложения
 События
 Сравнительный а...
Киев 2016
Совместная работа
Система мониторинга производительности своими руками
Киев 2016
Совместная работа
Система мониторинга производительности своими руками
Киев 2016
Планы на будущее
 Инфраструктурные метрики
 Метрики производительности приложения
 События
 Сравнительный ан...
Киев 2016
Что получилось
Система мониторинга производительности своими руками
Киев 2016
Что получилось
Система мониторинга производительности своими руками
Киев 2016
Taurus
Система мониторинга производительности своими руками
docker run --rm -v <path-to-files>:/bzt-configs unde...
Киев 2016
Taurus
Система мониторинга производительности своими руками
Киев 2016
Спасибо
nedeliaev@gmail.com
nedeliaev
Alexander Nedeliaev
Система мониторинга производительности своими руками
Upcoming SlideShare
Loading in …5
×

QA Fes 2016. Александр Неделяев. Система мониторинга производительности своими руками

655 views

Published on

Как известно, то, что не может быть измерено, не может быть улучшено.
В своем докладе я расскажу вам о том, как с помощью open source инструментов можно построить систему мониторинга производительности приложения, а также представить полученные данные в доступной и наглядной форме. А технология контейнеров Docker поможет сделать это максимально быстро и просто.

Published in: Education
  • Be the first to comment

QA Fes 2016. Александр Неделяев. Система мониторинга производительности своими руками

  1. 1. Киев 2016 Первый в Украине фестиваль тестирования Система мониторинга производительности своими руками Александр Неделяев
  2. 2. Киев 2016 О себе nedeliaev@gmail.com nedeliaev Alexander Nedeliaev Система мониторинга производительности своими руками
  3. 3. Киев 2016 С чего все началось Система мониторинга производительности своими руками
  4. 4. Киев 2016 Слои мониторинга •OS •CRM •ERP •Email Application •Database: Oracle, SQL Server, MySQL •Web servers: IIS, Apache •Application servers: WebSphere, Tomcat, JBoss, MS .Net Middleware •Servers: Windows Server, Solaris, Linux •Virtualization: VMware, Hyper-V, Citrix XenServer •Storage: SAN, NAS, RAID, S.M.A.R.T •Network: LAN, WLAN, VPN Hardware Система мониторинга производительности своими руками
  5. 5. Киев 2016 Слои мониторинга •OS •CRM •ERP •Email Application •Database: Oracle, SQL Server, MySQL •Web servers: IIS, Apache •Application servers: WebSphere, Tomcat, JBoss, MS .Net Middleware •Servers: Windows Server, Solaris, Linux •Virtualization: VMware, Hyper-V, Citrix XenServer •Storage: SAN, NAS, RAID, S.M.A.R.T •Network: LAN, WLAN, VPN Hardware Система мониторинга производительности своими руками
  6. 6. Киев 2016 Готовые решения APM Система мониторинга производительности своими руками
  7. 7. Киев 2016 Почему нет? • Масштабность • Неготовность приложения • Целесообразность • Стоимость Система мониторинга производительности своими руками
  8. 8. Киев 2016 Кастомное решение Система мониторинга производительности своими руками
  9. 9. Киев 2016 Отправная точка Система мониторинга производительности своими руками http://jmeter.apache.org/usermanual/realtime-results.html
  10. 10. Киев 2016 Что лежит в основе мониторинга? Система мониторинга производительности своими руками  Метрика  Значение  Отметка времени
  11. 11. Киев 2016 Временные ряды Система мониторинга производительности своими руками
  12. 12. Киев 2016 В чем недостаток JMeter  Чрезмерное потребление ресурсов  Слабая визуализация результатов  Фрагментарность  Неудобство работы с данными Система мониторинга производительности своими руками
  13. 13. Киев 2016 Инструменты Система мониторинга производительности своими руками
  14. 14. Киев 2016 Структура  Сбор данных из различных источников  Запись и хранение данных в базе  Визуализация данных  Оповещения Система мониторинга производительности своими руками
  15. 15. Киев 2016 Структура Система мониторинга производительности своими руками
  16. 16. Киев 2016 Визуализация Система мониторинга производительности своими руками
  17. 17. Киев 2016 План Система мониторинга производительности своими руками
  18. 18. Киев 2016 Установка и конфигурация Система мониторинга производительности своими руками https://docs.docker.com https://hub.docker.com
  19. 19. Киев 2016 Команды Docker • docker pull [image] • docker run -d -e [environmentVariable] -p [ports] • docker start / stop [containerID] • docker-machine ip • docker images -a • docker ps -a • docker rm [containerID] • docker rmi [image] Система мониторинга производительности своими руками
  20. 20. Киев 2016 Установка InfluxDB и Grafana Система мониторинга производительности своими руками Из папки проекта: docker-compose up -d http://bit.ly/qamonitoring
  21. 21. Киев 2016 Настраиваем JMeter Система мониторинга производительности своими руками http://jmeter.apache.org/usermanual/realtime-results.html
  22. 22. Киев 2016 Настраиваем Grafana Система мониторинга производительности своими руками
  23. 23. Киев 2016 Что я хочу видеть Система мониторинга производительности своими руками
  24. 24. Киев 2016 Что я хочу видеть  Инфраструктурные метрики  Метрики производительности приложения  События  Сравнительный анализ данных  Совместная работа, sharing  Бизнес метрики  Оповещения Система мониторинга производительности своими руками
  25. 25. Киев 2016 Что я хочу видеть  Инфраструктурные метрики  Метрики производительности приложения  События  Сравнительный анализ данных  Совместная работа, sharing  Бизнес метрики  Оповещения Система мониторинга производительности своими руками
  26. 26. Киев 2016 Инфраструктурные метрики - Linux CollectD: • CPU used/ free/ idle/ etc • Free disk (via mounting hosts '/' into container, eg: -v /:/hostfs:ro) • Disk performance • Load average • Memory used/ free/ etc • Uptime • Network interface • Swap https://github.com/andreasjansson/docker-collectd-write-graphite Система мониторинга производительности своими руками
  27. 27. Киев 2016 Инфраструктурные метрики - Windows Система мониторинга производительности своими руками https://hodgkins.io/using-powershell-to-send-metrics-graphite https://github.com/MattHodge/Graphite-PowerShell-Functions
  28. 28. Киев 2016 Что я хочу видеть  Инфраструктурные метрики  Метрики производительности приложения  События  Сравнительный анализ данных  Совместная работа, sharing  Бизнес метрики  Оповещения Система мониторинга производительности своими руками
  29. 29. Киев 2016 Метрики производительности приложения <rootMetricsPrefix>test.minAT Min active threads <rootMetricsPrefix>test.maxAT Max active threads <rootMetricsPrefix>test.meanAT Mean active threads <rootMetricsPrefix>test.startedT Started threads <rootMetricsPrefix>test.endedT Finished threads Система мониторинга производительности своими руками
  30. 30. Киев 2016 <rootMetricsPrefix><samplerName>.a.count Number of responses for sampler name <rootMetricsPrefix><samplerName>.a.min Min response time for responses of sampler name <rootMetricsPrefix><samplerName>.a.max Max response time for responses of sampler name <rootMetricsPrefix><samplerName>.h.count Server hits per seconds <rootMetricsPrefix><samplerName>.a.pct<percentile> Percentile computed for responses of sampler name Метрики производительности приложения Система мониторинга производительности своими руками
  31. 31. Киев 2016 Запускаем Jmeter тест Система мониторинга производительности своими руками jmeter -n -t your_script.jmx где -n: инструкиция запускать Jmeter без GUI -t: путь к .jmx файлу, который нужно запускать
  32. 32. Киев 2016 Проверяем данные в InfluxDB Система мониторинга производительности своими руками http://<docker-machine ip>:8083
  33. 33. Киев 2016 Создаем Grafana dashboard Система мониторинга производительности своими руками http://<docker-machine ip>:3000/dashboard/new
  34. 34. Киев 2016 Добавляем графики Система мониторинга производительности своими руками
  35. 35. Киев 2016 Настраиваем графики Система мониторинга производительности своими руками
  36. 36. Киев 2016 Настраиваем графики Система мониторинга производительности своими руками
  37. 37. Киев 2016 Улучшаем графики Система мониторинга производительности своими руками
  38. 38. Киев 2016 Устанавливаем зависимости Система мониторинга производительности своими руками
  39. 39. Киев 2016 Параметры отображения Система мониторинга производительности своими руками
  40. 40. Киев 2016 Что я хочу видеть  Инфраструктурные метрики  Метрики производительности приложения  События  Сравнительный анализ данных  Совместная работа, sharing  Бизнес метрики  Оповещения Система мониторинга производительности своими руками
  41. 41. Киев 2016 Аннотации Система мониторинга производительности своими руками curl -i -XPOST 'http://<docker-machine ip>:8086/write?db=jmeter' --data-binary 'alerts event="Deploy to prod"'
  42. 42. Киев 2016 Аннотации Система мониторинга производительности своими руками
  43. 43. Киев 2016 Что я хочу видеть  Инфраструктурные метрики  Метрики производительности приложения  События  Сравнительный анализ данных  Совместная работа, sharing  Бизнес метрики  Оповещения Система мониторинга производительности своими руками
  44. 44. Киев 2016 Сравнительный анализ данных Система мониторинга производительности своими руками
  45. 45. Киев 2016 Что я хочу видеть  Инфраструктурные метрики  Метрики производительности приложения  События  Сравнительный анализ данных  Совместная работа, sharing  Бизнес метрики  Оповещения Система мониторинга производительности своими руками
  46. 46. Киев 2016 Совместная работа Система мониторинга производительности своими руками
  47. 47. Киев 2016 Совместная работа Система мониторинга производительности своими руками
  48. 48. Киев 2016 Планы на будущее  Инфраструктурные метрики  Метрики производительности приложения  События  Сравнительный анализ данных  Совместная работа, sharing  Бизнес метрики  Оповещения Система мониторинга производительности своими руками
  49. 49. Киев 2016 Что получилось Система мониторинга производительности своими руками
  50. 50. Киев 2016 Что получилось Система мониторинга производительности своими руками
  51. 51. Киев 2016 Taurus Система мониторинга производительности своими руками docker run --rm -v <path-to-files>:/bzt-configs undera/bzt:v1.6.5 https://bit.ly/qataurus
  52. 52. Киев 2016 Taurus Система мониторинга производительности своими руками
  53. 53. Киев 2016 Спасибо nedeliaev@gmail.com nedeliaev Alexander Nedeliaev Система мониторинга производительности своими руками

×