2011-06-07 15 views
20

Tengo una aplicación web con una gran cantidad de lógica del lado del cliente y del lado del servidor. Se considera crítico para los negocios que esta aplicación se sienta receptiva para el usuario final, por alguna definición de "se siente receptivo". ;)Herramientas de supervisión de experiencia del usuario final

mayoría de las discusiones control de sitios web giran en torno a mantener un ojo en las métricas del lado del servidor (tiempo de respuesta, I/O profundidad de la cola, la latencia, carga de la CPU, etc.), es decir, que tienden a tratar el rendimiento del servidor y la capacidad de respuesta como si es un "proxy" viable para lo que el usuario está experimentando.

Desafortunadamente, a medida que movemos más y más la lógica al lado del cliente de Javascript, la correlación disminuye y las métricas de nuestro servidor se vuelven menos útiles.

No encontré ninguna buena coincidencia SO preguntas sobre esto. Google ofrece una gama de productos comerciales que pueden relacionarse con , pero generalmente provienen de los sitios web de los fabricantes, están llenos de palabras de mercado inútiles y "llámenos para obtener más detalles", por lo que es difícil saberlo.

¿Hay alguna herramienta de uso común para este tipo de cosas, aparte de enrollar la suya? Tanto los gratuitos como los comerciales son bienvenidos, aunque es obviamente mejor que todo lo demás sea igual.

EDIT: Para aclarar, principalmente necesito recopilar datos masivos sobre la experiencia del usuario, que incluyen tanto la capacidad de respuesta como los errores de rotura/secuencia de comandos. El análisis automático es muy agradable de usar, aunque espero tener que investigar de vez en cuando los datos, independientemente de la solución.

Respuesta

5

Hay algunas herramientas disponibles gratuitamente para la supervisión del rendimiento. Yahoo abrió una fuente de un script que utilizaron llamado Boomerang que puede medir los tiempos de carga de la página y otras métricas de rendimiento para los usuarios finales. Full documentation here. Google Analytics también ofrece un basic page load time report.

Para la supervisión de errores, querrá escuchar el evento window.onerror. No conozco ninguna secuencia de comandos que la registre automáticamente, ni explote los registros en el lado del servidor. Si implementa el suyo, querrá tener mucho cuidado de no hacer ping al servidor con demasiada frecuencia. ¡Imagine cuántas solicitudes generaría si hubiera un error JS en el código de manejo de errores de JS!

+1

Gracias Annie. La herramienta Boomerang es similar a lo que estoy buscando; Investigaré más a fondo. –

0

Puede utilizar Dynatrace Ajax para medir y perfilar el rendimiento de JavaScript en IE y Firefox. Para Chrome, que han construido en herramientas - echar un vistazo a: http://blog.chromium.org/2011/05/chrome-developer-tools-put-javascript.html

para monitorear el desempeño de la aplicación/sitio en general, recomendaría monitorización sintética utilizando navegadores reales, también conocido como la supervisión del rendimiento web. Estos son servicios que tienen agentes robóticos instalados en los ISP de Backbone que realizan la misma actividad que los usuarios finales. Utilizamos Catchpoint, que es compatible con secuencias de comandos Selenium. Pero hay otros como Gómez y Keynote que han estado proporcionando tales soluciones durante años.

+0

Gracias, iré a verlas ahora. –

0

También puede ver New Relic, ahora tiene integrado el "control real del usuario", que mide el rendimiento en todos los tipos de navegadores. Hay un período de prueba de 14 días para que pueda configurarlo de forma gratuita y ver si le gusta. Obtendrá visibilidad de la velocidad de representación del navegador, el procesamiento de DOM, el tiempo que pasa en la red y el rendimiento de la aplicación en el servidor.

+0

¿Pero no hay un seguimiento de los errores de javascript? –

2

Principalmente necesito recopilar datos masivos sobre la experiencia del usuario, que incluyen tanto la capacidad de respuesta como los errores de rotura/guión.

=> Eso es lo que usamos iMacros (y la versión alojada, AlertFox) para. iMacros ejecuta las mediciones en una variedad de navegadores web reales (IE, Firefox, ...). Las herramientas están disponibles como gratis y versiones pagas. La información que obtienes es similar a Dynatrace Ajax pero más fácil de usar y menos costosa.

En nuestro caso, lo usamos para comparar una aplicación web de misión crítica de manera continua. Las tareas monitoreadas incluyen el tiempo de inicio de sesión, el tiempo para completar ciertas tareas tales como la entrada de datos, la carga de archivos o la recuperación de información del almacén de datos.

1

Bucky cliente y Bucky Server, puede realizar esa tarea:

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

Desde su página web:

herramienta de código abierto para medir el rendimiento de su aplicación web directamente de su navegadores de los usuarios.

para analizar los datos aconsejan grafito o OpenTSDB

2

Puede probar Atatus que proporciona un verdadero control de usuario (RUM) y el error de seguimiento de avanzada para los sitios web y aplicaciones web.

https://www.atatus.com/

Cuestiones relacionadas