All Products
Search
Document Center

Application Real-Time Monitoring Service:What is Application Monitoring?

Last Updated:Apr 21, 2026

Application Monitoring is an application performance monitoring (APM) service offered as part of Application Real-Time Monitoring Service (ARMS). Install an agent to monitor application health, locate slow or faulty interfaces, and diagnose performance bottlenecks in production without modifying your code.

Auto-instrumentation

Application Monitoring uses bytecode instrumentation at runtime to deliver APM capabilities without any changes to your application code. Developers do not need to interact with the agent during development. Applications deployed in Container Service for Kubernetes (ACK) clusters or on Elastic Compute Service (ECS) instances can use the Integration Center to inject agents automatically, which simplifies onboarding.

Application topology

The agent automatically discovers upstream and downstream dependencies between your applications. It captures distributed traces across RPC frameworks (such as Dubbo) and HTTP frameworks (such as Spring Cloud) and displays them as a visual application topology. The topology also covers middleware such as MySQL, Redis, and RocketMQ. Use the application topology to identify performance bottlenecks and abnormal calls across your system.

Interface monitoring

Application Monitoring automatically discovers and monitors HTTP and RPC interfaces in your application. For each interface, it collects metrics such as call count, response time, error count, and exception count. Use the interface monitoring dashboard and trace waterfall view to pinpoint which component in a trace causes a performance issue.

Trace analysis

Application Monitoring provides trace analysis tools that let you combine filter conditions and aggregation dimensions to analyze traces in real time. Common use cases include:

  • View the time distribution of slow calls that exceed a specified duration.

  • Analyze the distribution of error requests across different hosts.

  • Monitor traffic changes from specific customers or endpoints.

Slow SQL analysis

Application Monitoring provides slow SQL analysis for relational SQL databases (such as MySQL and PostgreSQL) and NoSQL databases (such as Redis and MongoDB). You can identify SQL statements with high latency, analyze slow transactions, and trace slow queries back to the calling application code.

Intelligent insight

When response time spikes or error rates increase, intelligent insight automatically identifies the root cause. Without manual configuration, intelligent insight analyzes historical application data with built-in algorithms to provide root cause analysis and actionable recommendations. You can subscribe to alerts for intelligent insight events to receive proactive notifications.

Continuous profiling

Continuous profiling diagnoses CPU and memory usage at the code level with minimal performance overhead. Continuous profiling provides fine-grained breakdowns by method name, class name, and line number. Use this data to optimize hot paths, reduce latency, increase throughput, and lower resource costs.

Alerting

Application Monitoring provides more than 50 preset alert rules covering JVM metrics, host metrics, and interface performance. You can customize thresholds and combine rules to match your requirements. Through ARMS Alert Management, you can configure:

  • Alert convergence to reduce noise from duplicate notifications

  • Multi-channel notification including DingTalk, email, and webhooks

  • Escalation policies to route unacknowledged alerts

Open-source ecosystem

Application Monitoring integrates with the OpenTelemetry standard, enabling distributed trace correlation across multiple programming languages and heterogeneous technology stacks. Application metrics collected by Application Monitoring are stored in Managed Service for Prometheus instances under your account. Default Grafana dashboards are provided, and you can build custom dashboards or perform secondary development by using PromQL.

What's next