Инструменты мониторинга взаимодействия с конечным пользователем - PullRequest
20 голосов
/ 08 июня 2011

У меня есть веб-приложение с большим количеством логики как на стороне клиента, так и на стороне сервера.Считается критически важным для бизнеса, чтобы это приложение чувствовало отзывчивость к конечному пользователю, для некоторого определения «чувствует себя отзывчивым».;)

Большинство дискуссий по мониторингу веб-сайтов вращаются вокруг наблюдения за показателями на стороне сервера (время отклика, глубина очереди ввода-вывода, задержка, загрузка ЦП и т. Д.), Т. Е. Мы склонны рассматривать производительность и быстродействие сервера.как будто это жизнеспособный «прокси» для того, что испытывает пользователь.

К сожалению, по мере того, как мы перемещаем все больше и больше логики на клиентский Javascript, корреляция уменьшается и показатели нашего сервера становятся менее полезными.

Я не нашел подходящих вопросов по этому вопросу.Googling предлагает целый ряд коммерческих продуктов, которые могут быть связаны, но они, как правило, поступают с веб-сайтов производителей, на которых полно бесполезных высказываний на рынке и «пожалуйста, позвоните нам для получения подробной информации», так что это трудно понять.

Существуют ли какие-либо общепринятые инструменты для такого рода вещей, кроме собственного?Приветствуются как бесплатные, так и коммерческие, хотя бесплатные, очевидно, лучше при прочих равных условиях.

РЕДАКТИРОВАТЬ: Чтобы уточнить, мне в первую очередь необходимо собрать объемные данные об опыте пользователя, включая как отзывчивость, так иполомка / ошибки скрипта.Автоматический анализ очень полезен, хотя я бы ожидал, что ему придется иногда самим копаться в данных, независимо от решения.

Ответы [ 7 ]

5 голосов
/ 08 июня 2011

Есть несколько свободно доступных инструментов для мониторинга производительности. Yahoo открыла открытый скрипт, который они использовали под названием Boomerang , который может измерять время загрузки страницы и другие показатели производительности для конечных пользователей. Полная документация здесь . Google Analytics также предлагает базовый отчет о времени загрузки страницы .

Для мониторинга ошибок вам нужно прослушивать событие window.onerror. Я не знаю ни одного скрипта, который будет автоматически регистрировать его для вас, или мои журналы на стороне сервера. Если вы реализуете свой собственный, вам нужно быть очень осторожным, чтобы не пинговать сервер слишком часто - представьте, сколько запросов он будет генерировать, если в вашем коде обработки ошибок JS произошла ошибка JS!

2 голосов
/ 12 июня 2011

Мне в первую очередь нужно собирать объемные данные о пользовательском опыте, в том числе об отзывчивости и поломках / ошибках сценариев.

=> Именно для этого мы используем iMacros (и размещенную версию AlertFox ). iMacros выполняет измерения в различных реальных веб-браузерах (IE, Firefox, ...). Инструменты доступны в бесплатных и платных версиях. Информация, которую вы получаете, похожа на Dynatrace Ajax, но проще в использовании и дешевле.

В нашем случае мы используем его для оценки критически важного веб-приложения на постоянной основе. Отслеживаемые задачи включают в себя время для входа в систему, время для выполнения определенных задач, таких как ввод данных, загрузка файлов или извлечение информации из хранилища данных.

1 голос
/ 31 июля 2015

Вы можете попробовать Atatus , который обеспечивает мониторинг реальных пользователей (RUM) и расширенное отслеживание ошибок для веб-сайтов и веб-приложений.

https://www.atatus.com/

1 голос
/ 06 мая 2015

Bucky Client и Bucky Server, могут выполнять эту задачу:

http://github.hubspot.com/bucky/

С их сайта:

Инструмент с открытым исходным кодом для непосредственного измерения производительности вашего веб-приложения. из браузеров ваших пользователей.

Для анализа данных они советуют Графит или OpenTSDB

0 голосов
/ 11 июня 2011

Вы также можете проверить New Relic - теперь в него встроен «мониторинг реальных пользователей» - который измеряет производительность для всех типов браузеров. Существует 14-дневный пробный период, так что вы можете установить его бесплатно и посмотреть, нравится ли вам. Вы получите представление о скорости рендеринга в браузере, обработке DOM, времени, которое он проводит в сети, вплоть до производительности вашего приложения на сервере.

0 голосов
/ 08 июня 2011

Вы можете использовать Dynatrace Ajax для измерения и профилирования производительности JavaScript в IE и Firefox. Для Chrome у них есть встроенные инструменты - взгляните на: http://blog.chromium.org/2011/05/chrome-developer-tools-put-javascript.html

Для мониторинга производительности всего приложения / сайта я бы рекомендовал синтетический мониторинг с использованием реальных браузеров, также известный как веб-мониторинг производительности. Это сервисы, в которых роботизированные агенты, работающие на магистральных интернет-провайдерах, выполняют те же действия, что и конечные пользователи. Мы используем Catchpoint , который поддерживает сценарии Selenium. Но есть и такие, как Гомес и Кейнот, которые годами предоставляют такие решения.

0 голосов
/ 08 июня 2011

http://www.whitefrost.com/documents/html/technical/dhtml/funmon.html#part1 проверяет производительность функций JavaScript.

...