Application Monitoring es un servicio de monitoreo del rendimiento de aplicaciones (APM) que forma parte de Application Real-Time Monitoring Service (ARMS). Instale un agente para supervisar el estado de sus aplicaciones, localizar interfaces lentas o con fallos y diagnosticar cuellos de botella de rendimiento en producción sin modificar su código.
Instrumentación automática
Application Monitoring utiliza la instrumentación de bytecode en tiempo real para ofrecer capacidades de APM sin necesidad de modificar el código de su aplicación. Los desarrolladores no necesitan interactuar con el agente durante el desarrollo. Las aplicaciones desplegadas en clústeres de Container Service for Kubernetes (ACK) o en instancias de Elastic Compute Service (ECS) pueden usar Integration Center para inyectar agentes automáticamente, lo cual simplifica la incorporación.
Topología de la aplicación
El agente descubre automáticamente las dependencias ascendentes y descendentes entre sus aplicaciones. Captura trazas distribuidas mediante frameworks RPC (como Dubbo) y HTTP (como Spring Cloud), y las muestra como una topología visual de la aplicación. Esta topología también abarca middleware como MySQL, Redis y RocketMQ. Utilice la topología de la aplicación para identificar cuellos de botella de rendimiento y llamadas anómalas en todo su sistema.
Monitoreo de interfaces
Application Monitoring descubre y supervisa automáticamente las interfaces HTTP y RPC de su aplicación. Para cada interfaz, recopila métricas como el recuento de llamadas, el tiempo de respuesta, el recuento de errores y el recuento de excepciones. Utilice el panel de monitoreo de interfaces y la vista de cascada de trazas para determinar con precisión qué componente de una traza causa un problema de rendimiento.
Análisis de trazas
Application Monitoring proporciona herramientas de análisis de trazas que le permiten combinar condiciones de filtro y dimensiones de agregación para analizar trazas en tiempo real. Algunos casos de uso comunes incluyen:
Consulte la distribución temporal de las llamadas lentas que superan una duración especificada.
Analice la distribución de solicitudes con error en distintos hosts.
Supervise los cambios de tráfico provenientes de clientes o endpoints específicos.
Análisis de SQL lento
Application Monitoring ofrece análisis de SQL lento para bases de datos SQL relacionales (como MySQL y PostgreSQL) y bases de datos NoSQL (como Redis y MongoDB). Identifique sentencias SQL con alta latencia, analice transacciones lentas y rastree consultas lentas hasta el código de la aplicación que las invoca.
Análisis inteligente
Cuando se producen picos en el tiempo de respuesta o aumentan las tasas de error, el análisis inteligente identifica automáticamente la causa raíz. Sin necesidad de configuración manual, esta función analiza los datos históricos de la aplicación mediante algoritmos integrados para proporcionar un análisis de la causa raíz y recomendaciones prácticas. Suscríbase a alertas de eventos de análisis inteligente para recibir notificaciones proactivas.
Continuous profiling
Continuous profiling diagnostica el uso de CPU y memoria a nivel de código con una sobrecarga de rendimiento mínima. Esta función proporciona desgloses detallados por nombre de método, nombre de clase y número de línea. Utilice estos datos para optimizar las rutas críticas, reducir la latencia, aumentar el throughput y disminuir los costos de recursos.
Alertas
Application Monitoring ofrece más de 50 reglas de alerta predefinidas que cubren métricas de JVM, métricas de host y rendimiento de interfaces. Personalice umbrales y combine reglas según sus necesidades. Mediante ARMS Alert Management, configure:
Convergencia de alertas para reducir el ruido generado por notificaciones duplicadas
Notificaciones multicanal que incluyen DingTalk, correo electrónico y webhooks
Directivas de escalado para enrutar alertas no reconocidas
Ecosistema de código abierto
Application Monitoring se integra con el estándar OpenTelemetry, lo que permite la correlación de trazas distribuidas en varios lenguajes de programación y pilas tecnológicas heterogéneas. Las métricas de aplicación recopiladas por Application Monitoring se almacenan en instancias de Managed Service for Prometheus bajo su cuenta. Se proporcionan paneles predeterminados de Grafana; además, puede crear paneles personalizados o realizar desarrollos secundarios mediante PromQL.
Pasos siguientes
Para comenzar a monitorear su aplicación, consulte la guía de inicio rápido correspondiente a su lenguaje de programación. Por ejemplo, consulte Monitor a Java application deployed in an ACK cluster.
Para consultar las dependencias ascendentes y descendentes de su aplicación, consulte Dependencies.
Para configurar alertas para sus aplicaciones, consulte Alert rules.