SlideShare a Scribd company logo
Monitoring huge Drupal
Tools & Tips
Konstantin Chaus
Drupal developer
ext_kch@jysk.com
JYSK
Веб-сайт мониторинг
Это процесс постоянного тестирования и проверки того,
что конечные пользователи нормально взаимодействуют
с веб-сайтом (приложением).
Веб-сайт мониторинг используется бизнесом для уверенности,
что веб-сайт (приложение) функционирует как ожидалось и
справляется с нагрузками.
Цели мониторинга:
1. Знать что сайт доступен
2. Минимизировать downtime
3. Оптимизировать нагрузку
4. Сравнивать между релизами
5. Искать потенциальные проблемы
6. Тестировать новое
Уровни мониторинга:
Server
CPU, RAM, Disk, IO, Network
Application
httpd, php, mysql, redis,
memcached, Drupal
Client
JS, AJAX, browsers, DOM
External
Mail, Solr, Replication,
other external services
Server
CPU, RAM, Disk, IO, Network
Application
 status page
 access log (per vhost)
 error log (per vhost)
 status page
 slow response log (per socket)
 error log (per socket)
 admin/reports/status
 syslog (module + rsyslog)
 dblog (module)
 Drupal
Web Server
 PHP-FPM
Application
 slow query log
 error log
 general log (file, table)
 jet profiler
 percona tools
 debug log
# memcached OPTIONS -v > file
 MySQL
 Memcached
Client
window.onerror
AJAX -> callback
 Cross browser & mobile devices
 Speed, debugging
 Monitor JS errors
External
Кастомный трекинг внешних сервисов
Чего не хватает?
 Средние показатели работы серверов
 Среднее время отработки запроса на сервере
 Среднее время построения страницы в бразуере
 Среднее время по каждому отдельному сервису
 Оповещение по разным каналам (mail, sms, mobile app)
 Статистика
Свой велосипед?
Monitoring Services
 Сервис сбора и анализа статистики
 Актуальная статистика в реальном времени
 Удобный инструмент для анализа
Как это работает
Как это выглядит
Server. Overview
Server. Graph view
Application (APM)
Интеграция:
 модуль PHP (агент)
 процесс, который отправляет статистику (демон)
Поддерживает:
 PHP, Ruby, Java, .NET, Node.js, Python
 MySQL, Memcached, Redis, Mongo
Overview (dashboard)
 Время ответа, нагрузка, ошибки, ...
 Можно создавать свои рабочие столы
Transactions. Overview
Transaction
Transaction. Profile stats
Transaction. Summary
Transaction. Profiling
Databases
Memcached
MySQL
MySQL. Query stats
MySQL. Slow queries
Drupal integration
 modules
 hooks
 views
PHP Errors
Deployment tags
В релиз процедуру добавляем простой
curl запрос на аккаунт приложения и получаем
статистику релизов
Browser. Overview
Интеграция:
 настройка модуля PHP
 функция PHP в коде
 Java Script сниппет
Browser. JS errors
 статистика ошибок Java Script
 можно посмотреть stack trace
 статистика ошибок по браузерам
JS error stack trace
Не всегда есть stack trace
Показывает похожие ошибки, что помогает установить закономерности
Browser. Page views
Можно посмотреть медленные сессии – подобно firebug
External
Статистика подобна транзакциям
Видно сервисы, от которых сильные зависимости
Alerts
Можно настроить при каких показателях приложения
слать email (sms, notification) счастья и
можно настроить кого именно и как-именно
Вы хотите осчастливить))
Alert channels
Alert. Ping configuration
Настроить URL который будет
проверятся на доступность и если он недосутпен –
сработает Alert
Plugins
Insights
Transactions = backend
PageViews = frontend
NRQL> удобный язык построения запросов по всей статистике
Examples. Performance
 уменьшение downtimes
 уменьшение response time
 уменьшение жестких внешних зависимостей
Examples. External
Яркий пример того, как внешний сервис портил
статистику и приводил к downtime!
Examples. Test new module
Внедрение модуля autoslave на некоторых сайтах
После второго релиза в статистике появился Memcached
Examples. Test new feature
Внедрение новой фичи на фронтэнде
Быстро откатились
New Relic
• Отличная документация
• Быстрая интеграция и настройка
• Встроенная поддержка Drupal
• Удобный инструмент для анализа
• Очень гибкое API
• Мобильное приложение (Android, IOS)
Вопросы.

More Related Content

PDF
ВІТАЛІЙ ГОНЧАРУК «За допомогою чого пишуться серйозні веб додатки на .NET» O...
PDF
4.3. Rat races conditions
PDF
Как обезопасить PBN от взлома? Практические рекомендации
PPT
!2hl++2008 Restful Architechture
PDF
PDF
20160330 Занятие 6. Серия практических занятий "Чеклист"
PDF
Нагрузочное тестирование API. Как летать, а не ползать?
PPTX
Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016
ВІТАЛІЙ ГОНЧАРУК «За допомогою чого пишуться серйозні веб додатки на .NET» O...
4.3. Rat races conditions
Как обезопасить PBN от взлома? Практические рекомендации
!2hl++2008 Restful Architechture
20160330 Занятие 6. Серия практических занятий "Чеклист"
Нагрузочное тестирование API. Как летать, а не ползать?
Ложка дёгтя – Александр Лэйн, QIWI, Zabbix Moscow Meetup 2016

What's hot (20)

PDF
20160323 Пример бизнес-приложения контроля качества в розничной торговле
PDF
Автоматизация мониторинга распределенной сети подразделений
PDF
Zabbix в badoo, от lld к super discovery
PDF
Managing thousands of servers at OK.RU
KEY
Безопасность веб-приложений: starter edition
PPS
СКБ-Банк. Игорь Клопотов. "Apache ServiceMix: опыт внедрения и эксплуатации"
PPTX
Общая концепция системы развёртывания серверного окружения на базе SaltStack ...
PPTX
Azure - хранение данных в облаке
PPTX
MPD2011 | Олег Донцов "Введение в разработку bada Flash & Web приложений"
PPTX
В поисках магической кнопки, или как воспитать SoapUI
PPTX
Управление тысячами серверов в Одноклассниках. Алексей Чудов.
PPTX
Svyatoslav Login
PPTX
TeamPass - управление разграничением доступа к сервисным паролям в команде | ...
PPTX
Новые возможности развертывания и масштабирования open source приложений в Az...
PPTX
PowerShell DSC и SharePoint 2016
PDF
Chudov
PPTX
Автоматизированное тестирование WEB сервисов
PPT
Internet Explorer 8
PDF
20160330 Приложение с использованием данных с сервера (EMS)
PDF
20160316 Работа с подготовленными заранее опросниками, хранимыми на сервере
20160323 Пример бизнес-приложения контроля качества в розничной торговле
Автоматизация мониторинга распределенной сети подразделений
Zabbix в badoo, от lld к super discovery
Managing thousands of servers at OK.RU
Безопасность веб-приложений: starter edition
СКБ-Банк. Игорь Клопотов. "Apache ServiceMix: опыт внедрения и эксплуатации"
Общая концепция системы развёртывания серверного окружения на базе SaltStack ...
Azure - хранение данных в облаке
MPD2011 | Олег Донцов "Введение в разработку bada Flash & Web приложений"
В поисках магической кнопки, или как воспитать SoapUI
Управление тысячами серверов в Одноклассниках. Алексей Чудов.
Svyatoslav Login
TeamPass - управление разграничением доступа к сервисным паролям в команде | ...
Новые возможности развертывания и масштабирования open source приложений в Az...
PowerShell DSC и SharePoint 2016
Chudov
Автоматизированное тестирование WEB сервисов
Internet Explorer 8
20160330 Приложение с использованием данных с сервера (EMS)
20160316 Работа с подготовленными заранее опросниками, хранимыми на сервере
Ad

Viewers also liked (15)

PPTX
Тарас Цюпер - Методы кеширования и оптимизация Drupal 7 проектов
PPTX
Олександр Щедров та Альбіна Тюпа — Magic button. Can production releases be s...
PPTX
Артем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheel
PPTX
Юлія Снітко — Як подружити дизайнерів і Drupal розробників. Досвід ефективної...
PDF
Олександр Щедров — Build your application in seconds and optimize workflow as...
PPTX
Віталій Бобров — Web components, Polymer and Drupal
PDF
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
PPTX
Артем Доценко — Deploy Plus. Better UI and more control for deploy module
PDF
Олексій Калініченко — Configuration Management in Drupal8
PPTX
Олександр Лінивий — Multisite platform with continuous delivery process for m...
PPTX
Андрій Юн — Воркшоп "Docker use cases for developers"
PDF
Слава Мережко — Практикум: "Як ростити розробників"
PDF
Тарас Круц — Open Social: brand new Drupal 8 distro for building social netwo...
PDF
Ігор Карпиленко — PHPStorm for drupal developer
PPTX
Анатолій Поляков — Subdomains everywhere
Тарас Цюпер - Методы кеширования и оптимизация Drupal 7 проектов
Олександр Щедров та Альбіна Тюпа — Magic button. Can production releases be s...
Артем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheel
Юлія Снітко — Як подружити дизайнерів і Drupal розробників. Досвід ефективної...
Олександр Щедров — Build your application in seconds and optimize workflow as...
Віталій Бобров — Web components, Polymer and Drupal
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
Артем Доценко — Deploy Plus. Better UI and more control for deploy module
Олексій Калініченко — Configuration Management in Drupal8
Олександр Лінивий — Multisite platform with continuous delivery process for m...
Андрій Юн — Воркшоп "Docker use cases for developers"
Слава Мережко — Практикум: "Як ростити розробників"
Тарас Круц — Open Social: brand new Drupal 8 distro for building social netwo...
Ігор Карпиленко — PHPStorm for drupal developer
Анатолій Поляков — Subdomains everywhere
Ad

Similar to Костянтин Чаус — Monitoring of huge Drupal site. Tools and tips (20)

PPTX
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
PDF
Александр Воинов - Тренды Web
PDF
Александр Воинов - Тренды Веб
PPTX
Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...
PPTX
Devtools
PPTX
Drupal: система для быстрой и комфортной разработки web-сайтов
PPTX
Monitoring-driven эксплуатация (rootconf2015)
PPTX
Monitoring driven эксплуатация / Николай Сивко (HeadHunter)
PDF
Рынок Drupal (Александр Воинов)
PDF
Александр Воинов. Power of Drupal market
PPT
Easy authcache 2 кеширование для pro родионов игорь
PPT
Easy authcache 2 кэширование для pro. Родионов Игорь
PPTX
Real-time мониторинг событий (Евгений Пальчевский)
PPTX
Создаем Drupal дистрибутив: от идеи до сопровождения.
PDF
Мониторинг Drupal-сайтов
PDF
Доклад "Мониторинг серверных приложений"
PDF
Чингис Саднанов. Drupal как платформа
PPTX
Bionic University. Разработка с использованием CMS/CMF Drupal. Быстрый старт....
PPTX
Мониторинг качества работы вашего проекта
PPT
Drupal as service.
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Александр Воинов - Тренды Web
Александр Воинов - Тренды Веб
Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...
Devtools
Drupal: система для быстрой и комфортной разработки web-сайтов
Monitoring-driven эксплуатация (rootconf2015)
Monitoring driven эксплуатация / Николай Сивко (HeadHunter)
Рынок Drupal (Александр Воинов)
Александр Воинов. Power of Drupal market
Easy authcache 2 кеширование для pro родионов игорь
Easy authcache 2 кэширование для pro. Родионов Игорь
Real-time мониторинг событий (Евгений Пальчевский)
Создаем Drupal дистрибутив: от идеи до сопровождения.
Мониторинг Drupal-сайтов
Доклад "Мониторинг серверных приложений"
Чингис Саднанов. Drupal как платформа
Bionic University. Разработка с использованием CMS/CMF Drupal. Быстрый старт....
Мониторинг качества работы вашего проекта
Drupal as service.

More from LEDC 2016 (17)

PPTX
A. Postnikov & P. Mahrinsky — Drupal Community — це ми
PDF
Генадій Колтун — Комунізм наступає: що будемо робити, коли машини навчаться п...
PDF
Андрій Поданенко — Воркшоп "Розвертання CIBox"
PDF
Юрій Герасімов — Editorial experience in Drupal8
PPTX
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
PPTX
Тарас Кирилюк — Docker basics. How-to for Drupal developers
PPTX
Сергій Бондаренко — Тестування Drupal сайтiв з допогою TqExtension
PPTX
Вадим Абрамчук — Big Drupal: Issues We Met
PDF
Юрій Герасимов — Delayed operations with queues
PDF
Андрій Юн — Drupal contributor HOWTO
PPTX
Генадій Колтун — Перехід від фрілансера в стадію компанії
PPTX
Олена Ольховик — Від frontend розробки до Drupal-темізації. Основи і специфіка
PPTX
Тарас Кирилюк та Олена Пустовойт — CI workflow у веб-студії
PDF
Тарас Круц - Tips On Getting Everything You Can Out of Drupal Form API
PPTX
Анатолий Поляков - Drupal.ajax framework from a to z
PDF
Андрей Поданенко - Start using Vagrant now!
PPTX
Александр Даниленко - Panels как философия
A. Postnikov & P. Mahrinsky — Drupal Community — це ми
Генадій Колтун — Комунізм наступає: що будемо робити, коли машини навчаться п...
Андрій Поданенко — Воркшоп "Розвертання CIBox"
Юрій Герасімов — Editorial experience in Drupal8
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
Тарас Кирилюк — Docker basics. How-to for Drupal developers
Сергій Бондаренко — Тестування Drupal сайтiв з допогою TqExtension
Вадим Абрамчук — Big Drupal: Issues We Met
Юрій Герасимов — Delayed operations with queues
Андрій Юн — Drupal contributor HOWTO
Генадій Колтун — Перехід від фрілансера в стадію компанії
Олена Ольховик — Від frontend розробки до Drupal-темізації. Основи і специфіка
Тарас Кирилюк та Олена Пустовойт — CI workflow у веб-студії
Тарас Круц - Tips On Getting Everything You Can Out of Drupal Form API
Анатолий Поляков - Drupal.ajax framework from a to z
Андрей Поданенко - Start using Vagrant now!
Александр Даниленко - Panels как философия

Костянтин Чаус — Monitoring of huge Drupal site. Tools and tips