Monitorización gratuita de sitios web con Azure

31/05/2017
Artículo original

Si creas y mantienes sitios o aplicaciones web, una de las cuestiones importantes una vez se han finalizado y se ponen en marcha es verificar constantemente que se encuentran en buen estado de funcionamiento. De nada sirve crear la aplicación web más maravillosa del mundo si luego la colgamos en un servidor compartido cutre y se cae constantemente o tiene unos tiempos de respuesta enormes.

Por ello, una de las funciones que tenemos que llevar a cabo en todo desarrollo, una vez se ha desplegado, es la monitorización continua y el control del rendimiento de las aplicaciones o sitios web que están bajo nuestra responsabilidad.

Hay muchas maneras de hacerlo, incluso es posible crear tu propia aplicación para hacer este control, pero lo mejor es recurrir, si podemos, a un servicio profesional que lo gestione como es debido.

Uno de estos servicios es el que ofrece Microsoft a través de Azure, y que se llama Application Insights. Este servicio permite realizar una monitorización completa de cualquier aplicación si la instrumentamos debidamente, pero también permite monitorizar sitios web (incluso estáticos) simplemente verificando que responden de la manera adecuada a las peticiones. Además controla la velocidad de respuesta, permite monitorizar desde múltiples ubicaciones en todo el mundo, que el contenido devuelto es el esperado, guarda un histórico de todas las pruebas, representa gráficamente los resultados, y también nos avisa inmediatamente si algo no funciona, bien a través de email o usando webhooks para poder automatizar alguna aplicación.

¿Qué más se puede pedir? Pues que encima sea gratuito, algo que cumple también este servicio.

Para poder sacarle partido necesitaremos, eso sí, dar de alta una cuenta en Azure. Lo bueno es que dar de alta una cuenta de prueba es gratis. Lo malo es que debes introducir una tarjeta de crédito para poder hacerlo, en la que se cargarán los costes en los que incurras usando Azure. De todos modos lo que ofrece Azure es tanto, tan bueno y a un precio tan asequible que no debería importarte demasiado.

En el siguiente vídeo, nuestro tutor y director José Manuel Alarcón nos muestra paso a paso cómo crear un perfil de monitorización con Application Insights, cómo configurarlo y cómo ver la información que genera. Después del vídeo sigue leyendo, hay información adicional interesante...

[youtube:FP138UhcB-k]

Evitando falsear los datos de visitas

Si utilizas Google Analytics o algún otro producto que se base en la ejecución de un script, todas estas peticiones adicionales no te influirán en los datos de visitas. Sin embargo si tu control de tráfico se basa en el análisis de los logs del servidor, todas estas peticiones quedarán registradas y falsearán tus datos de visitas. Si por ejemplo pones un control cada 15 minutos desde 5 ubicaciones diferentes del mundo, esto supone 14.400 "visitas" extra al mes a cada sitio que está monitorizándose.

Para evitarlo lo único que debes hacer es decirle al software que analiza tus logs que no haga caso a las peticiones recibidas desde ciertas direcciones IP que se corresponden con las de los servidores de Microsoft que hacen la monitorización. Estas IPs son un número considerable, y las puedes encontrar aquí. En esta página encontrarás una lista de IPs por cada ubicación de las que puedes elegir en la configuración de la tarea. Añádelas a los filtros de peticiones en el análisis del log y no tendrás visitas falsas que te cambien los resultados del análisis.