¿Qué monitorizar de una aplicación o entorno?

Al igual que queremos tener el control de la producción de una fabrica (como su rendimiento y/o el numero de productos que salen por hora), hoy en día esta situación la podemos extrapolar a casi cualquier entorno de negocio. Las paginas web, las cuales no dejan de ser una aplicación corriendo en un servidor web las cuales dependen de un hardware y software que corre en un servidor, estas deberían estar bajo vigilancia en todo momento.

Ademas, tambien realizamos un control de nuestra audiencia web: numero de visitas, origen de estas, etc. con Google Analytics o similar, y debemos asegurarnos que está funcionando correctamente y con unos criterios mínimos.

En el caso de una tienda online, desde el punto de vista del usuario, podemos revisar diversas variables, ya sea el tiempo de conexión medio, si funciona la pasarela de pago, añadir productos al carrito y realizar un control del login, por ejemplo. Pero tenemos varios puntos más a tener en cuenta que pueden afectar a la experiencia de usuario en nuestro entorno digital.

Para optimizar esta experiencia podemos definir tres partes que siempre deberíamos que tener en cuenta al hablar de aplicaciones o páginas web:

  • Infraestructura
  • Aplicaciones
  • Usuario

Infraestructura

Aglutinaremos en infraestructura todo lo relacionado con la salud del servidor y que no este relacionado con el software.

Tanto si es físico como virtual, deberemos ahondar en vigilar nuestra infraestructura de servidor, revisando tanto los logs que nos proporcione nuestro S.O. como los monitores básicos de sistema.

Recomendaciones mínimas a monitorizar:

  • CPU – Consumo
  • Memoria RAM y swap – Consumo
  • Disco – Consumos, disponibilidad, salud.
  • Red – Consumos y salud
  • Tiempo de actividad – uptime
  • S.O. – Errores conocidos

Si esto lo tenemos en un proveedor en la nube o esta gestionado por nuestro proveedor, podemos despreocuparnos parcialmente, pero nunca está de más monitorizar los logs de nuestro sistema periódicamente, para segurarnos de su correcto funcionamiento.

Aunque hay muchos otros monitores a añadir, estos serian los básicos. Nos proporcionaran una base a la hora de conocer la salud de nuestros sistemas y si debemos re-dimensionar nuestra plataforma según necesitemos, es decir, medir momentos pico de alto consumo y ver como se comporta en momentos valle (sin prácticamente actividad). Sistemas de auto-crecimiento como Kubernetes, nos permiten adaptarnos mucho mejor y ahorrar costes, pero eso lo hablaremos más adelante, en un próximo artículo.

Aplicaciones

Englobaremos el grupo de aplicaciones a todo software que quede fuera del S.O. y este relacionado con nuestra infraestructura, donde podríamos incluir:

  • Servicios/aplicaciones – Pueden ser web como Nginx o Apache, JAVA, Node.js, etc.
  • Bases de datos – MySQL, Mongodb, Redis, MSSQL, etc.

Estas aplicaciones deberán ser monitorizadas como mínimo a nivel de proceso, para ver si están corriendo, en logs, para verificar que no hay errores conocidos en ellos y a nivel de puerto (si lo usaran), para verificar que están proporcionando servicio.

En base de datos, si queremos llegar a un punto superior podemos incluir querys directamente sobre ésta, que nos den más información sobre nuestro servicio y monitorizar partes especificas de estas, como podrían ser los tablespaces en una base de datos MSSQL.

Usuario

La monitorización de experiencia de usuario es uno de los puntos más importantes y el más olvidado. Debemos tener en cuenta, que en todo negocio, conocer al usuario y su experiencia de uso, nos permite adaptarnos mejor a el.

En el caso de negocios web, una tienda online por ejemplo, nos ayudaría a ver que su proceso de compra se realiza a un tiempo aceptable, afectando mínimamente a su experiencia. Es largo conocido que entrar en una web que va lenta, desespera a cualquiera y una espera de unos dos segundos, después de un click puede ser un problema. Le dejamos un articulo de Google extenso sobre esta temática. Este nos expone como de importante es el rendimiento de una web y por lo tanto deberíamos medirlo durante el tiempo, ya que el número de visitas puede variar desde el primer momento.

Las sondas web automatizadas, nos permiten ver de una forma sintética la experiencia de usuario en diversos puntos, ya sea en el login, añadir al carrito, aceptar la compra o realizar el pago.

Todos estos puntos tienen una relación directa con nuestras aplicaciones y hardware. Cuando accedemos al login, tenemos una base de datos y aplicación que valida que es correcto, si funciona de forma errónea o es lento, afecta a la experiencia de usuario, igual que cuando vamos a pagar, debemos saber que nuestro TPV responde en un tiempo adecuado.

Añadiendo monitores y alertas en consecuencia, nos permite adelantarnos y mitigar un posible problema, avisando a nuestros usuarios o proveedores que no esta funcionando. Es imposible tener un sistema perfecto, pero tener una monitorización adecuada a nuestras necesidades, nos permite acercarnos más a una situación idílica.

No hemos incluido la gestión y monitorización de backups en este artículo, pero seria un punto clave para tener controlado/monitorizado dentro de nuestra aplicación para la pronta restauración de un servicio, proceso o entorno.

Que podemos hacer por usted?

En Baknet nos hemos especializado en gestionar y administrar íntegramente la monitorización por y para usted.

Ofrecemos los 3 tipos de monitorización mencionados, combinándolos para que su su negocio esté vigilado en todo momento. Tenemos un servicio en la nube donde se incluye la instalación, configuración y parametrización. Nos encargamos de asesorar y atender cualquier duda que pueda tener.

Contacte con nosotros sin compromiso aquí.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *