ACP互联网架构认证笔记 ARMS业务实时监控服务

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: ARMS是一款阿里云应用性能管理(APM)类监控产品。一共提供三种监控,应用监控,前端监控,自定义监控。

ARMS是一款阿里云应用性能管理(APM)类监控产品一共提供三种监控,应用监控,前端监控,自定义监控。服务开通,免费开通 ARMS 基础版后,可在 ARMS 控制台开通按量付费的监控服务。开通按量付费后,才可购买应用监控资源包。应用监控是一款针对 Java 应用的性能管理(Application Performance Management,简称 APM)软件。无需修改任何代码,只需要在 Java 应用的启动脚本中挂载一个探针(ECS Agent),该探针就能够对 应用进行全方位监控,快速地定位出错接口和慢接口、重现调用参数、检测内存泄漏、发现系统瓶颈,从而大幅提升线上问题诊断问题的效率。 应用监控探针能够自动发现应用的上下游依赖关系。具体而言,该探针能够有效捕获、智能计算、自动展示不同应用之间通过RPC 框架(例如 Dubbo、HTTP、HSF 等协议)组成的调用链

应用/实例调用信息

上报字段 描述
响应时间 应用、实例调用的平均响应时间,或数据库操作的平均执行响应时间
请求数 应用、实例调用的请求调用次数,或数据库操作的执行次数
错误数 应用、实例调用的错误调用次数,或数据库操作中异常执行次数

概览

上报字段 描述
请求数 应用、实例调用的请求调用次数,或数据库操作的执行次数
响应时间 应用、实例调用的平均响应时间,或数据库操作的平均执行响应时间
错误率 (应用、实例调用的异常调用次数,或数据库操作的异常次数)/请求数
性能一览 柱状图与左 Y 轴为请求数统计,折线图与右 Y 轴为响应时间

SQL 分析

上报字段 描述
SQL 调用统计 柱状图与左 Y 轴为数据库请求数统计,折线图与右 Y 轴为数据库响应时间
平均耗时 本次数据库调用的平均耗时
调用次数 该应用此类型数据库调用次数

异常分析

上报字段 描述
异常统计 柱状图为该应用、实例、数据库的异常次数
异常类型 采集到的抛错类型
异常详细信息 抛错的详细信息
平均耗时 本次错误调用的平均耗时
错误数 该异常类型的错误出现的次数

接口快照

上报字段 描述
耗时 应用、实例的接口的调用耗时
状态 应用、实例的接口的调用返回状态,正常返回为绿色,抛异常为红色
TraceId 应用、实例调用的索引 ID,点击可以跳转到该调用链详情

前端监控专注于 Web 端体验数据监控,**从页面打开速度(测速)、页面稳定性(JS Error)和外部服务调用成功率(API)**这三个方面监测 Web 页面的健康度。 前端监控需要按照提示在应用设置页面上按提示复制代码,并粘贴在第一行,然后重启应用即可。统计指标:JS 稳定性、访问速度、API成功率JS 稳定性,在 ARMS 中是指页面的 JS 错误率。在一个 PV 周期内,如果发生过错误(JS Error),则此 PV 周期为错误样本。错误率 = 错误样本量 / 总样本量 访问速度,在 ARMS 中,访问速度是指页面的首次渲染时间。

字段含义

阶段耗时

上报字段 描述 计算方式 备注
dns DNS 解析耗时 domainLookupEnd - domainLookupStart
tcp TCP 连接耗时 connectEnd - connectStart
ssl SSL 安全连接耗时 connectEnd - secureConnectionStart 只在 HTTPS 下有效
ttfb Time to First Byte(TTFB),网络请求耗时 responseStart - requestStart TTFB 有多种计算方式,ARMS 以 Google Development 定义为准
trans 数据传输耗时 responseEnd - responseStart
dom DOM 解析耗时 domInteractive - responseEnd
res 资源加载耗时 loadEventStart - domContentLoadedEventEnd 表示页面中的同步加载资源


关键性能指标


上报字段 描述 计算方式 备注
firstbyte 首包时间 responseStart - domainLookupStart
fpt First Paint Time, 首次渲染时间 / 白屏时间 responseEnd - fetchStart 从请求开始到浏览器开始解析第一批 HTML 文档字节的时间差
tti Time to Interact,首次可交互时间 domInteractive - fetchStart 浏览器完成所有 HTML 解析并且完成 DOM 构建,此时浏览器开始加载资源
ready HTML 加载完成时间, 即 DOM Ready 时间 domContentLoadEventEnd - fetchStart 如果页面有同步执行的 JS,则同步 JS 执行时间 = ready - tti
load 页面完全加载时间 loadEventStart - fetchStart load = 首次渲染时间 + DOM 解析耗时 + 同步 JS 执行 + 资源加载耗时

API 成功率,API成功率 = 接口调用成功的样本量 / 总样本量 自定义配置标签页上可以配置调用链采样率、Agent 开关、慢 SQL 查询阈值、接口响应时间阈值、限流阈值、无效接口调用、方法栈最大长度、异常白名单、线程剖析开关、慢调用监听触发阈值等。



探针总开关和日志级别的修改即时生效,无需重启应用。如果关闭探针总开关,则系统将无法监控您的应用,请谨慎操作! 在调用链查询页面,您可以通过TraceId精确查询调用链详细情况,或结合多种条件筛选查询调用链。 数据源(日志源)为 ARMS 提供数据流入,您可以通过各种方式将数据推送到 ARMS 实时计算引擎。 云服务器 ECS,通过 Logtail Agent 完成在 ECS 上的增量推送,例如日志文件。适用场景包括应用运行在阿里云 ECS 上的所有业务监控场景。 LogHub 数据源,将阿里云日志服务(SLS LogHub)作为 AMRS 的数据源输入。如果 ECS 上的日志已经被阿里云 LogHub 收集,那么可以用此方法让 ARMS 复用 LogHub上的数据。 API 数据源,通过 API SDK 向 ARMS 直接推送日志。适用于不适合装 Agent 但是可以通过 API 集成来直接推送数据收集场景,例如移动终端。 MQ 数据源,通过对接 MQ 直接拉取 Topic 内消息并基于其内容进行实时统计,进行业务监控。适用于已用 MQ 处理业务的用户,包括电商、物联网等领域。 ARMS 的内置切分器,包括单分隔符、多分隔符、顺序、KV、JSON 等多种切分器。您可以针对不同的场景单独或组合使用这些切分器。

相关实践学习
通过云拨测对指定服务器进行Ping/DNS监测
本实验将通过云拨测对指定服务器进行Ping/DNS监测,评估网站服务质量和用户体验。
目录
相关文章
|
11天前
|
XML 前端开发 Android开发
Kotlin教程笔记(80) - MVVM架构设计
Kotlin教程笔记(80) - MVVM架构设计
|
1月前
|
机器学习/深度学习 网络架构 计算机视觉
目标检测笔记(一):不同模型的网络架构介绍和代码
这篇文章介绍了ShuffleNetV2网络架构及其代码实现,包括模型结构、代码细节和不同版本的模型。ShuffleNetV2是一个高效的卷积神经网络,适用于深度学习中的目标检测任务。
69 1
目标检测笔记(一):不同模型的网络架构介绍和代码
|
23天前
|
XML 前端开发 Android开发
Kotlin教程笔记(80) - MVVM架构设计
Kotlin教程笔记(80) - MVVM架构设计
24 1
|
28天前
|
消息中间件 Kafka 数据库
微服务架构中,如何确保服务之间的数据一致性?
微服务架构中,如何确保服务之间的数据一致性?
|
1月前
|
XML 前端开发 Android开发
Kotlin教程笔记(80) - MVVM架构设计
本系列学习教程笔记详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。对于希望快速学习Kotlin语法的读者,建议参考“简洁”系列教程。本文重点介绍了Kotlin实现MVVM架构的设计思路和代码实现,包括Model、ViewModel和View层的具体实现,以及如何通过LiveData和viewModelScope有效管理数据和内存,避免内存泄漏。此外,还讨论了MVVM架构的常见缺点及应对策略,帮助开发者在实际项目中更好地应用这一设计模式。
33 1
|
1月前
|
前端开发 测试技术 数据处理
Kotlin教程笔记 - MVP与MVVM架构设计的对比
Kotlin教程笔记 - MVP与MVVM架构设计的对比
33 2
|
1月前
|
XML 前端开发 Android开发
Kotlin教程笔记(80) - MVVM架构设计
Kotlin教程笔记(80) - MVVM架构设计
30 2
|
1月前
|
存储 前端开发 Java
Kotlin教程笔记 - MVVM架构怎样避免内存泄漏
Kotlin教程笔记 - MVVM架构怎样避免内存泄漏
|
1月前
|
前端开发 JavaScript 测试技术
Kotlin教程笔记 - 适合构建中大型项目的架构模式全面对比
Kotlin教程笔记 - 适合构建中大型项目的架构模式全面对比
35 0
|
1月前
|
存储 前端开发 Java
Kotlin教程笔记 - MVVM架构怎样避免内存泄漏
Kotlin教程笔记 - MVVM架构怎样避免内存泄漏
51 0