Tradicionalmente, el acrónimo APM se ha utilizado para referirse a la gestión del rendimiento de las aplicaciones. Sin embargo, en los últimos años también se refiere, tal vez más correctamente, al monitoreo del rendimiento de las aplicaciones. Según Wikipedia, "la APM trata de detectar y diagnosticar los problemas complejos en el rendimiento de las aplicaciones para mantener el nivel de servicio esperado".
Por definición, el monitoreo del rendimiento de las aplicaciones o APM permite a las organizaciones monitorear las métricas de rendimiento de sus aplicaciones críticas para el negocio, recibir alertas oportunamente en caso de problemas de rendimiento y generar informes para realizar análisis de rendimiento periódicos.
Según Gartner, la empresa analista de software, una herramienta de APM debe cumplir las tres dimensiones funcionales principales:
Este aspecto de la APM se enfoca en la experiencia del usuario final con base en la disponibilidad y rendimiento de las aplicaciones/servicios empresariales. Consta del monitoreo de usuarios reales y el monitoreo de transacciones sintéticas, que normalmente utiliza agentes digitales con las aplicaciones corporativas para recopilar la información transaccional y ayuda a identificar los problemas en la experiencia digital.
Es otra funcionalidad indispensable para cualquier software de APM. Consta del descubrimiento automático de los servidores de aplicaciones, servidores web, micro servicios y plataformas de aplicaciones tales como contenedores y verticales de servicio, así como del análisis detallado de las transacciones en las aplicaciones utilizando instrumentación de código de byte y/o rastreo distribuido para detectar errores en la aplicación. La mayoría de los equipos de TI evalúan las funciones en este segmento antes de tomar una decisión de compra.
Gartner define esta dimensión como el empleo de inteligencia artificial centrada en el dominio para las funciones de operaciones de TI utilizando la inteligencia artificial (IA) y machine learning (ML). Las herramientas de APM deben emplear alertas de rendimiento, correlación de eventos y análisis de la causa raíz. Además, incluyen el seguimiento de las anomalías de rendimiento para las transacciones HTTP/S soportadas por los servidores de aplicaciones Java y .NET.
Gartner enmarca el software de APM con estas dimensiones. Sin embargo, hay que tener en cuenta que las necesidades de monitoreo de aplicaciones digitales varían enormemente entre las organizaciones y, por tanto, los requisitos de APM también difieren en los distintos contextos. Si bien algunas organizaciones se conforman con combinar varias herramientas para el monitoreo, las alertas y los informes, un software de APM ideal debería tener una consola unificada para todos los requisitos de monitoreo. Antes de elegir una solución de APM, los profesionales de TI y DEvOps en la esfera de APM deben analizar detalladamente las siguientes funciones para obtener los resultados adecuados en el rendimiento de las aplicaciones.
Cuando decimos KPI, estamos hablando de las métricas de rendimiento de las aplicaciones como tiempos de respuesta, solicitudes por minuto, detalles de hilos de procesos y sesiones, uso de CPU, disco y memoria, estados de error, etc. Esto incluye el primer conjunto de métricas esenciales de aplicaciones e infraestructuras que usted verifica con el fin de medir la eficiencia de sus aplicaciones. Su sistema de APM debe poder presentar estos datos con exactitud en intervalos de tiempo regulares./p>
La mayoría de las soluciones de APM proporcionan visibilidad completa hasta el nivel del código para ayudar a descubrir problemas que de otro modo podrían pasar desapercibidos hasta después de que un usuario final los reporte. Su solución de APM debe poder tomar capturas de cada traza de transacción y permitirle examinar detalladamente las consultas de SQL para detectar las que se ejecutan demasiado lento. Con la ayuda del rastreo de transacciones distribuidas, la solución de APM debe ser capaz de dar seguimiento a las llamadas realizadas desde un servicio a otro a través de varias plataformas y lenguajes, especialmente si su aplicación se ejecuta en un entorno de micro servicios. Su equipo de DevOps probablemente debería saber cuán valiosa puede llegar a ser este tipo de información en la fase de desarrollo de una aplicación.
Piense en estas preguntas por un momento.
Si su software de APM responde a estas preguntas adecuadamente, tendrá pocas quejas de los clientes con respecto a la prestación de los servicios. Con la ayuda de las transacciones sintéticas que simulan el comportamiento del usuario en su sitio web/aplicación, debería poder identificar cualquier discrepancia en su rendimiento (tiempo de carga de la página, errores 404, etc.) antes de implementar sus aplicaciones. Una vez implementadas, esto también garantiza que sus aplicaciones tengan el mismo rendimiento sin importar desde qué parte del mundo se accede a ellas.
Su software de APM podría monitorear una variedad de aplicaciones e infraestructuras, pero es más importante evaluar la herramienta en términos de las necesidades corporativas individuales. Por ejemplo, su herramienta de APM podría ayudarle a monitorear su servidor web y las estadísticas de rendimiento de la base de datos subyacentes; pero, ¿también gestiona el rendimiento de sus aplicaciones personalizadas internas incorporadas a la web? Una herramienta de APM ideal debe ser flexible y soportar todos los puntos de contacto monitoreables necesarios en un entorno de TI.
Como se mencionó antes, las herramientas de APM ideales deben tener lo esencial, es decir, el monitoreo completo, las alertas e informes integrales, a fin de eliminar el problema de tener que utilizar varias herramientas para medir y optimizar el rendimiento de las aplicaciones.
ADDM (Application Discovery and Dependency Mapping) es descubrimiento de aplicaciones y asignación de dependencias. Su herramienta de APM no solo debe descubrir automáticamente todas las aplicaciones y servidores en su red, sino que también debe ser capaz de categorizarlos (DB, VM, servidores, etc.) y permitir al usuario visualizar las interdependencias de las aplicaciones. Esta función en particular ayuda a ahorrar tiempo que por lo general se desperdicia tratando de identificar los cuellos de botella en una multitud de aplicaciones.
Las alertas están entre los requisitos principales en las herramientas de APM. Los umbrales para estas alertas se deben poder configurar para cada métrica, así como para toda la aplicación. Estas alertas facilitan y agilizan la identificación de los problemas de rendimiento de las aplicaciones. Los equipos de TI deben ser capaces de recibirlas a través de varios canales como correo electrónico, SMS, mensajes de Slack, incidentes en una herramienta ITSM como ServiceNow, etc. No obstante, estas alertas también deben poder ejecutar acciones preconfiguradas para agilizar la resolución de problemas. Algunos ejemplos de acciones automatizadas incluyen ejecutar scripts correctivos o archivos por lotes, reiniciar un VM o instancia de contenedor, ejecutar una operación MBean, generar volcados de pila/volcados de hilos/recopilación de basura, etc.
Es muy extenuante gestionar todas las aplicaciones con el mismo nivel de atención. Imagine tener cientos de servidores/aplicaciones en su herramienta de monitoreo; con un dashboard organizado que presenta estadísticas como las alertas críticas recientes, los servidores ocupados, la disponibilidad actual de los servidores, etc., usted claramente sabrá qué servidores debe atender primero. Por supuesto, las estadísticas más trascendentales desde un punto de vista del valor corporativo podrían variar entre las organizaciones, por lo que el dashboard debe ser personalizable.
Los informes son un medio importante para analizar y compartir periódicamente información sobre el rendimiento de sus aplicaciones. Este análisis puede ayudar a identificar los servidores infrautilizados y sobreutilizados, entender las tendencias del rendimiento de APM, predecir las tendencias futuras con base en los datos históricos y planificar la reasignación de recursos y actualizaciones de la infraestructura. Cualquier instancia de APM para pequeñas, medianas y grandes empresas estará incompleta si no se implementan los análisis de aplicaciones correctos.
Uno de los factores más importantes al escoger una herramienta de APM es su precio. Con otro proveedor, normalmente el precio por monitorear una red pequeña de unos pocos cientos de servidores podría no parecer mucho. No obstante, se debe tener en cuenta el posible costo adicional que las organizaciones deben pagar si deciden aumentar la capacidad de su infraestructura. Vale la pena reflexionar si el precio relacionado con el escalamiento afectará su presupuesto y obstaculizará la transformación digital. Vale la pena reflexionar sobre esto.
Si bien la mayoría de las herramientas de APM empresariales cubren varios de los aspectos abordados en esta página, la solución que mejor se ajusta a sus necesidades organizacionales es aquella que ha evaluado por sí mismo en su entorno de monitoreo personalizado. Dicho esto, ManageEngine Applications Manager es una de esas soluciones de APM efectivas que incluye todas las funciones de monitoreo (monitoreo, alertas, informes, dashboards, etc.) a un precio asequible.