本文解答了关于前端监控的常见问题。

本页目录

为什么有些监控页面或API名称中出现了星号(*)?

ARMS前端监控的页面统计是以实际打开的页面URL名称为基础,对各个维度进行统计。监控页面或API名称中的星号(*)并不是真实页面URL的一部分,而是表示这是经过URL收敛后的结果。换言之,它表示这不是一个具体的URL,而是一些相似URL的集合。

Satisfaction Trend

URL收敛算法说明

  • 问题:“变量”会导致同类URL发散成多个,因而难以监控和分析。
  • 目标:合并同类URL,用星号(*)代替不断变化的“变量”。
  • 方案:采用我们自研的URL收敛算法,在尽可能保留语义信息的前提下,合并同类URL,减少URL总数。主要分为以下两步。
    • 聚类:将相似URL归纳为一组。
    • “变量”识别:提取同组URL中不断变化的“变量”,并以星号(*)代替。

收敛过程如下图所示。

Convergence Process

[回到顶部]

为什么页面访问量列表和页面访问速度列表不一致?

这是因为您的应用是SPA( Single-Page Application,即单页面应用),且开启了SPA自动解析。在SPA的应用场景下,页面访问量和页面访问速度的统计方法如下。

  • 页面访问量:触发hashchange事件后会自动上报PV,以统计该Hash值对应页面的PV情况。所以在查看SPA应用的页面访问量列表时,可以查看对应的Hash页面的具体PV。
  • 页面访问速度:因为SPA应用切换Hash值后,页面的访问速度不会变化,所以访问速度的统计不以Hash值为维度,这样不仅可以减少不必要的上报量,而且还可以清晰了解页面的性能情况。

[回到顶部]

为什么API日志中没有生成TraceId,导致无法跳转至对应的应用监控?

  1. 请检查您的ARMS探针配置项是否选中与应用监控关联。若未选中,请选中后,再重新将ARMS探针接入前端应用。
    tab_retcode_settings_precondition
    检查API日志中是否生成TraceId。若仍未生成TraceId,则执行步骤2
  2. 检查您的页面请求和API请求的域名是否一致。为防止因跨域名验证导致API请求失败,因此若存在跨域名访问的情况,则不能正常生成TraceId。若出现此问题,请联系ARMS钉钉答疑服务账号exkzd2f。

[回到顶部]

为什么在诊断JS错误时,会显示Source Map文件错误?

  1. 请确保文件后缀名为.js.map
  2. 请确保账号有ARMS的写入权限,如果账号没有权限,请联系账号管理员。

[回到顶部]

用户控制台的设置和setConfig的关系是什么?

控制台的设置仅可以帮助您快速生成相应的配置代码,生成的代码仅在发布后生效,而修改setConfig是直接生效的。

ARMS控制台生成代码

此外,控制台的设置只能在接入时使用,接入完成后,您需要通过setConfig来修改配置。

[回到顶部]

资源消耗图展示的资源消耗和计费流量的关系是什么?

资源消耗图展示的是真实的资源消耗,您在设置消费限制中设置的也是真实消耗的上限额度,详情请参见设置消费限制。真实的资源消耗中,只有部分流量是计费的。

[回到顶部]

SDK中应该如何配置环境和版本号?

您可以通过配置 release参数来区分版本号,详情请参见release。您也可以通过配置environment来区分不同环境,详情请参见environment

  • prod表示线上环境。
  • gray表示灰度环境。
  • pre表示预发环境。
  • daily表示日常环境。
  • local表示本地环境。

[回到顶部]

如何查看配置的版本号?

  1. 登录ARMS控制台
  2. 在左侧导航栏中单击前端监控,在前端监控页面上单击目标应用名称。
  3. 在左侧导航栏中选择应用 > 访问明细
  4. 日志的版本号显示在日志列表区域的版本号列内。查看版本号
  5. 您也可以在菜单栏内按照环境和版本筛选日志。只有在PV日志设置完成版本号后,才可以使用按照版本号筛选日志功能。按照环境和版本筛选日志

[回到顶部]

如何查看用户的页面停留时间?

  1. 登录ARMS控制台
  2. 在左侧导航栏中单击前端监控,在前端监控页面上单击目标应用名称。
  3. 在左侧导航栏中选择应用 > 会话追踪
  4. 在会话列表中单击目标会话的用户ID,查看会话详情页面。
  5. 将光标放置在访问时间轴列内的时间轴区域上,即可查看页面停留时间。

[回到顶部]

如何查看ARMS的前端自定义性能指标?

  1. 登录ARMS控制台
  2. 在左侧导航栏中单击前端监控,在前端监控页面上单击目标应用名称。
  3. 在左侧导航栏中选择应用 > 访问速度
  4. 自定义性能指标展示在页面访问速度排行区域中。

[回到顶部]

ARMS配置未生效怎么处理?

原因可能是用户浏览器缓存未更新。您可以先在导航栏内选择访问明细后,切换版本号为最新配置的版本号并查看趋势图。如果未配置版本号,可以在SDK中配置release参数,详情请参见release。发布完成后,请观察最新版本是否符合预期。

[回到顶部]

为什么小程序JS Error没有上报?

小程序JS Error没有上报可能是因为在async方法下,信息被小程序底层的try catch捕获,导致错误信息上传失败。您可以尝试手动上报错误信息,详情请参见API参考

[回到顶部]

可以监听console.error的JS Error吗?

  • 在浏览器中,针对满足JS Error格式的错误信息,浏览器会静默上报。
  • 在小程序端,您可尝试手动上报错误信息,详情请参见API参考

[回到顶部]

在Weex环境中,小程序设置的UID为什么没生效?

  • 如果未调用setConfig方法,请检查初始化配置时是否配置UID,如果缺失请补全。
  • 如果调用了setConfig方法,请在setConfig中重新配置UID。

[回到顶部]

日志的保存时效是多长?

日志的保存时效为一个月。

[回到顶部]

试用期创建的站点可以在开通专家版之后继续使用吗?

  • 在试用期到期之后的15天内,站点将因为欠费被停用,您可以尝试重新启动应用。
  • 在试用期到期之后的15天后,出于节约计算资源和存储资源的考虑,超出试用时间未开通专业版的站点将被删除,相关的资源也会释放,这部分数据是无法找回的。

[回到顶部]

ARMS应用版本和宿主版本分别是什么?

  • 应用版本是当前线上项目的版本号,可以通过配置SDK的release字段来配置。详情请参见release
  • 宿主版本是SDK自动获取的,是当前项目所依附的App的版本号,目前因为没有对应宿主App版本的解析方案,只能解析到淘宝、支付宝或微信。

[回到顶部]