El monitoreo del rendimiento de aplicaciones (APM, por sus siglas en inglés) ya no se trata solo de medir las métricas de rendimiento, disponibilidad y experiencia del usuario del software de aplicación. Para comprender realmente qué tan bien está funcionando una aplicación, las herramientas de monitoreo deben capturar métricas de rendimiento que se alineen y respalden los objetivos comerciales.

Las empresas tienen una combinación de aplicaciones comerciales y personalizadas que brindan servicio a usuarios internos y clientes externos, a menudo a escala global. La mejor manera de garantizar una excelente experiencia de usuario en general es escribir código sin errores, lanzar aplicaciones de mejor calidad más rápido y proporcionar información accionable sobre todas las aplicaciones en preproducción y producción. Todo esto comienza en el desarrollo e incluye las siguientes métricas que toda herramienta de APM debe capturar.

Satisfacción del Usuario / Puntuaciones Apdex

El índice de rendimiento de la aplicación, o puntuación Apdex, se ha convertido en un estándar de la industria para rastrear el rendimiento relativo de una aplicación. Funciona especificando un objetivo de cuánto tiempo debería tomar una determinada solicitud web o transacción de la aplicación. Esas transacciones se clasifican en solicitudes satisfechas (rápidas), tolerantes (lentas), demasiado lentas y solicitudes fallidas. Luego se aplica una fórmula matemática simple para proporcionar una puntuación de 0 a 1. Su solución de APM elegida debe rastrear automáticamente las puntuaciones de satisfacción para cada una de sus aplicaciones y solicitudes web. También es deseable presentar las puntuaciones en un rango más amplio, como de 0 a 100 en lugar de 0 a 1, ya que facilita la comprensión y la acción sobre los conocimientos.

Tiempo de Respuesta Promedio

Los promedios siguen siendo una métrica de rendimiento útil, pero esos datos deben estar alineados con los objetivos comerciales. El tiempo de respuesta promedio de una tienda digital, por ejemplo, podría significar la diferencia entre mantenerse en el negocio y cerrar. Desde su equipo de operaciones hasta el liderazgo ejecutivo, todos quieren saber los tiempos de respuesta promedio, y el valor de su herramienta de APM elegida radica en capturar promedios que le indiquen cómo el rendimiento está afectando los objetivos comerciales.

Tasas de Error

Como se mencionó anteriormente, los incidentes críticos de rendimiento de la aplicación pueden resultar en costos significativos en ingresos, tiempo y reputación de marca para su organización. Si bien lo último que desea que vean sus usuarios son errores, una respuesta tardía o defectuosa a los incidentes es aún peor. Las herramientas de APM monitorean los errores utilizando tres formas comunes de rastrear esta métrica importante:

Cada método captura tasas de error, pero desea que su herramienta de APM esté equipada para integrar el seguimiento y registro de errores con trazabilidad completa de transacciones para resolver rápidamente problemas y mantener a los usuarios satisfechos. Es común ver miles de excepciones dentro de una aplicación, y sin umbrales predefinidos e identificación de anomalías, su equipo puede perder tiempo y recursos valiosos al abordar el problema incorrecto o llegar tarde a resolver un problema crítico.

Número de Instancias de Aplicación

La computación en la nube significa que sus aplicaciones alojadas se escalan para adaptarse a la demanda de los usuarios, por lo que es vital saber cuántas instancias de servidor/aplicación se están ejecutando en un momento dado. El escalado automático ciertamente le ahorra dinero durante los períodos de menor actividad, pero su herramienta de APM también debe reconocer y resolver desafíos de monitoreo únicos antes de afectar su resultado final. Por ejemplo, escalar automáticamente aplicaciones según el uso de la CPU puede evitar que el uso de la CPU aumente al aumentar el número de instancias de servidor donde reside su aplicación. Esto hará que su factura de alojamiento aumente considerablemente, por lo que querrá una herramienta de APM programable que comprenda cómo automatizar mejor la asignación de recursos.

Tasa de Solicitudes

Prácticamente todas las métricas de rendimiento esenciales se ven afectadas por los aumentos y disminuciones en el tráfico que recibe su aplicación. Las tasas de solicitudes también brindan información sobre picos e inactividad, y son útiles para correlacionar con otras métricas de rendimiento de la aplicación, lo que hace que esta métrica esencial sea clave para el éxito de la aplicación. Una API ocupada que de repente no recibe tráfico en absoluto, por ejemplo, podría ser realmente malo o simplemente ayudarlo a comprender la dinámica de cómo se escala su aplicación. El número de usuarios concurrentes es una métrica ligeramente diferente pero relativa que su herramienta de APM debe rastrear, ya que proporciona contexto y se correlaciona con otras métricas esenciales de la aplicación.

CPU de la Aplicación y del Servidor

Una métrica básica y crítica de rendimiento, el monitoreo de la CPU de la aplicación y del servidor es una parte esencial de todas las herramientas de monitoreo. Para obtener el máximo beneficio, su herramienta de APM debe rastrear el uso por servidor, así como un agregado de todas las instancias implementadas individualmente de su aplicación. Las métricas de monitoreo esenciales trabajan en conjunto para ayudar a que sus aplicaciones brinden una excelente experiencia de usuario, por lo que las mejores opciones de APM proporcionarán una observabilidad profunda en el mayor número de elementos de hardware y software que afectan el rendimiento de su aplicación, y eso incluye toda su infraestructura.

Disponibilidad de la Aplicación

Los acuerdos de nivel de servicio (SLA, por sus siglas en inglés) y el monitoreo de la disponibilidad de la aplicación son fundamentales para el éxito empresarial, por lo que medir si su aplicación está en línea y disponible es una métrica de rendimiento clave. Para aplicaciones web y en línea, simplemente programar verificaciones HTTP regulares es la forma más fácil de monitorear la disponibilidad de la aplicación con verificaciones “ping” que analizan los tiempos de respuesta, los códigos de estado e incluso el contenido específico en sus páginas web.

Recolección de Basura

Las aplicaciones escritas en .NET, C# y otros lenguajes de programación que utilizan la recolección de basura a menudo ocultan la causa raíz de los problemas de rendimiento. La recolección de basura puede hacer que los procesos se suspendan, que las aplicaciones se congelen virtualmente y que el uso de la CPU se dispare, a menos que se monitoree. Es importante que su solución de APM tenga la capacidad de monitorear los lenguajes más populares que utilizan la recolección de basura, como el contador de rendimiento “% de tiempo de GC” para aplicaciones .NET y las métricas JMX para Java, para garantizar un rendimiento óptimo.

Trazabilidad

Cada organización es diferente, y las soluciones de APM más útiles admitirán el perfilado de transacciones comerciales, o trazabilidad, para ayudar a analizar el flujo de cada transacción de usuario. La trazabilidad completa de transacciones le permite aislar y abordar rápidamente problemas de rendimiento al rastrear el recorrido del usuario a través de su infraestructura e identificar la línea de código exacta, la consulta de base de datos o las integraciones de terceros que afectan negativamente el rendimiento de la aplicación, lo que le brinda la oportunidad de resolver problemas antes de que generen una mala experiencia de usuario.

<h2