Sistemas

La importancia del uso de los APM (Monitoreo del rendimiento de aplicaciones)

2 Mins de lectura

Empezaremos por explicar lo que no es un APM. Un APM no es software de monitorización como intentan vender muchos proveedores, para esto ya existen otras herramientas específicas como Nagios o Icinga2.

¿Qué es un APM?

Un APM (Application Performance Management) es un software que nos permite descubrir aplicaciones, mostrar la experiencia de usuario, trazar y diagnosticar problemas a nivel de aplicación. Es una herramienta esencial para ayudar a los equipos tanto de desarrollo como de sistemas a optimizar y monitorizar el rendimiento de una aplicación.

¿Qué valores mide un APM?

Los APM recogen y cuantifican cientos de valores para luego poder medir el rendimiento de una aplicación. Los más básicos pueden ser valores como la CPU, RAM, escrituras/lecturas disco o algunos mas complejos como los siguientes:

  • Errores de aplicación: los APM tienen capacidad de filtrar los errores de aplicación y de mostrar cuando y cuantas veces han ocurrido
  • Tiempos de respuesta de aplicación

apm Tiempos de respuesta de aplicación

  • Trazas lentas: en función de la configuración especificada al APM podemos ver las peticiones lentas y trazarlas internamente

apm trazas lentas

  • Queries de Base de Datos: tiempos medios y por query de ejecución en BBDD, lo que nos permite saber si tenemos queries que pueden estar impactando en la aplicación y que son mejorables.

apm queries base de datos

  • Tiempos de respuesta de las llamadas externas: tiempos de respuesta en llamadas a proveedores externos como pasarelas de pago, webservice, etc.

llamadas externas

  • Experiencia de usuario: los APM mas completos permiten trazar la experiencia de usuario en la página web

¿Qué problemas podemos identificar rápidamente con un APM?

  1. Queries de BBDD o transacciones externas lentas
  2. Mediante el profiling podemos ver si nuestra aplicación Java tiene problemas de Garbage Collection o se está quedando sin memoria en alguna de las zonas de la JVM
  3. Identificar transacciones individuales que no han sido exitosas pudiendo ver en que parte de la transacción se ha quedado el usuario
  4. Monitorizar las métricas básicas como CPU, memoria, red, etc.
  5. Identificar los errores de aplicación con el control propio de errores que lleva el APM
  6. Identificar a través de KPIs las posibles regresiones que ha tenido una aplicación a nivel de rendimiento

 

¿Necesito un APM?

Si eres un desarrollador deberías utilizarlo en todos tus desarrollos, tendrás que tener en cuenta que dependiendo de la tecnología tendrás que usar un software de APM u otro ya que algunos no cubren todo el rango. Si das soporte a una aplicación o a los componentes de la infraestructura de esta entonces el APM es una herramienta muy valiosa.

 

En Hiberus Sistemas podemos ofrecerte la solución de APM que mas se adecue a las necesidades de tu empresa, desde nuestro propio servicio cloud APM hasta la implantación de las principales marcas del mercado: App Dynamics, New Relic, WatchDog…

2 posts

Sobre el autor
Responsable del equipo de Ciberseguridad de Hiberus Sistemas.
Artículos

Somos expertos en sistemas, cubrimos todas las áreas del departamento IT

Hiberus Sistemas es una empresa transversal a todo IT. Ayudamos a tu compañía a alcanzar sus objetivos de negocio manteniéndola al día de los últimos avances tecnológicos que puedan añadir valor.

¿Te ayudamos?

Artículos relacionados
Sistemas

Qué es Varnish Caché y por qué debes usarlo para optimizar tu servicio web

5 Mins de lectura
¿Qué es Varnish Cache? Varnish es un acelerador de aplicaciones web. En otras palabras: un proxy inverso de cacheo HTTP que actúa…
Sistemas

¿Por qué es necesario un análisis forense en Ciberseguridad?

4 Mins de lectura
Generalmente cuando oímos la palabra forense nuestro cerebro la asocia a una rama de la medicina, más concretamente y haciendo un esfuerzo,…
Sistemas

Pentesting con OWASP: fases y metodología

7 Mins de lectura
Llamamos “pentest” o test de intrusión a una prueba de seguridad ofensiva que simula un ciber ataque real en un entorno controlado….

Deja una respuesta

Tu dirección de correo electrónico no será publicada.