检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
前提条件 确保接入的节点与APM服务网络连通。可使用Telnet命令测试目标机器与APM服务器网络是否连通。 例如,以检查华北-北京四区域,且代码源选择“增强型探针”的连通性为例,请登录应用所部署的机器,并输入命令telnet 100.125.12.108:41333,其他区域地址请参考表1。
的数据库包含Mysql,Elastic Search,Hbase等多种类型。对于数据库的监控,采集器会采集具体的执行语句详情,方便用户定位代码级的性能问题。 登录管理控制台。 单击左侧,选择“管理与监管 > 应用性能管理 APM”,进入APM服务页面。 在左侧导航栏选择“链路追踪
慢SQL √ √ √ √ JVM分析 √ x √ √ AI能力 √ x √ √ 方法追踪 √ x √ √ 专家支持 x x 24小时在线支持 24小时在线支持 中国境内,每个季度可安排专家现场支持1天。 说明(是否支持,√表示支持,x表示不支持) 网格型产品各版本支持的功能详见下表。
业版,不支持企业版降级回免费版(基础版)。各版本支持的功能详见下表。 版本 免费版 企业版 版本说明 完全免费,最多可接入10个Agent在线。 所有功能完全开放。 数据存储时长 7天 30天 应用拓扑 √ √ 调用链 链路追踪调用链公测期间仅支持2天存储,其它场景支持7天存储。
util.LinedList.node(int) 方法占用了 66% 的 CPU,而相应的业务代码方法是 countPages(List)。 图4 Profiler火焰图分析 分析业务代码,结合代码可以发现该方法countPages(List)是对入参集合list进行下标遍历,而通过火焰图运行时数据发现,传入的是
已分配但未被回收的堆内存,使用场景主要包括内存泄漏等。该特性需要JDK版本为JDK17。 范围 My Code 用户代码。 All Code 全部代码。 聚合维度 Line 代码行。 Method 方法。 Class 类。 Package Java包名称。 按照方法路径搜索:搜索框设置搜
返回结果 状态码 请求发送以后,您会收到响应,包含状态码、响应消息头和消息体。 状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态。 对于“获取用户Token”接口,如果调用后返回状态码为“201”,则表示请求成功。 响应消息头 对应请求消息头,响应同样也有消息头,如“Content-type”。
体现用户对应用的满意度。 当事务异常,则上报告警。 对于用户体验差的事务,通过拓扑和调用链完成事务问题定位。 方法追踪 帮助应用的开发人员在线定位方法级性能问题。 SQL分析 分析异常SQL语句导致的数据库性能问题。拓扑展示数据库或SQL语句的关键指标。 JVM监控 实时监控JV
已分配但未被回收的堆内存,使用场景主要包括内存泄漏等。该特性需要JDK版本为JDK17。 范围 My Code 用户代码。 All Code 全部代码。 聚合维度 Line 代码行。 Method 方法。 Class 类。 Package Java包名称。 选择对比类型:在下拉菜单中,选
Code,聚合维度:Method,发现有两个方法占用了较多内存。 单击“方法路径”列,对应的方法名找到该方法的调用栈,向上找到调用此方法的业务代码。 定位到业务代码块,该代码使用了一个缓存来存放每个instance的信息。通过自监控查看该sql的调用,发现每分钟会调10万次,进一步证实是缓存失效了。
使能SDK,埋码代码会自动在小程序中完成埋点,所以建议在app.js中执行埋码代码,也可以在项目的任何位置执行。引入SDK方式分为:文件引入方式和npm方式引入。 采用npm方式集成SDK。 运行安装SDK的命令,安装SDK软件包。 从页面复制用于埋码的代码放置到app.js文件中。
使能SDK,埋码代码会自动在小程序中完成埋点,所以建议在app.js中执行埋码代码,也可以在项目的任何位置执行。引入SDK方式分为:文件引入方式和npm方式引入。 采用npm方式集成SDK。 运行安装SDK的命令,安装SDK软件包。 从页面复制用于埋码的代码放置到app.js文件中。
设置忽略HTTP响应代码。 为了避免探针误报正常调用链的诸如自定义返回码、异常等调用错误,快速准确地定位错误的调用链, 您可以设置该选项,错误记录表中将不记录被忽略的HTTP响应代码。单击,输入被忽略的HTTP响应代码,单击。格式为逗号分割的数字HTTP响应代码。 设置忽略错误和异常。
使能SDK,埋码代码会自动在小程序中完成埋点,所以建议在app.js中执行埋码代码,也可以在项目的任何位置执行。引入SDK方式分为:文件引入方式和npm方式引入。 采用npm方式集成SDK。 运行安装SDK的命令,安装SDK软件包。 从页面复制用于埋码的代码放置到app.js文件中。
配置详情 可以对监控项对应的部分采集器自定义采集参数,实现自定义采集配置。 使用限制 “监控项”页签,仅展示接入应用涉及的监控项。接入应用不涉及的监控项,不做展示。 监控项配置 登录管理控制台。 单击左侧,选择“管理与监管 > 应用性能管理 APM”,进入APM服务页面。 在左侧导航栏选择“应用监控
安装SDK,在项目根目录下运行“npm i apm-mini-sdk”命令,拉取SDK软件包。 使能SDK,埋码代码会自动在小程序中完成埋点,所以建议在app.js中执行埋码代码,也可以在项目的任何位置执行。引入SDK方式分为:文件引入方式和npm方式引入。 采用npm方式集成SDK 确保项目有“package
进入前端监控页面,单击“接入前端站点”。 选择“所属应用”,填入“站点名称”,单击“创建前端站点”按钮。 复制“业务埋码探针”中的代码到入口的HTML中,当执行到埋码的代码时会自动引入SDK并自动埋点。请注意,埋码的代码中appId不能为空。 表2 配置参数说明 参数名称 是否必填 默认值 描述 appId 是 -
logLevel 否 off 调试日志等级:debug|info|warn|error|off。 启动SDK。 Objective-C代码示例。 @import APMSDK; // 根据apm-sdk-config.json配置文件启动SDK [APMSDK start];
Performance Management,简称APM)帮助运维人员快速发现应用的性能瓶颈,以及故障根源的快速定位,为用户体验保驾护航。 您无需修改代码,只需为应用安装一个APM Agent,就能够对该应用进行全方位监控,帮助您快速定位出错接口和慢接口、重现调用参数、发现系统瓶颈,从而大幅
d、timeInterval、reportBackground、reportLaunch等参数。 混淆配置 如App对代码进行乱序混淆,则在混淆配置文件中添加代码段: -keep class com.cloud.apm.**{*;} # 如果使用gradle 8.x 请自行选择使用下面的配置