问题描述
有没有办法让 APM 真实用户监控(Javascript 代理)跟踪用户在页面上停留的时间?
我目前使用的是 Elasticsearch v7.11.2
我知道时间跟踪不在当前列表中 可用功能;有什么办法可以做到吗 通过,例如使用事务跨度或纯 JS?
解决方法
RUM 主要返回following data/metrics:
- 页面加载指标
- 静态资源(JS、CSS、图像、字体等)的加载时间
- API 请求(XMLHttpRequest 和 Fetch)
- 单页应用导航
- 用户交互(触发网络活动的点击事件)
- 以用户为中心的指标(长任务、FCP、LCP、FID 等)
- 页面信息(访问的 URL 和引荐来源网址)
- 网络连接信息
- JavaScript 错误
- 分布式追踪
- 细分指标
页面停留时间不是其中之一。此外,可能还有其他比页面停留时间更有趣的指标,例如 average session duration 和 dwell time。
由于每个事务都包含以微秒为单位的持续时间...
"transaction" : {
"duration" : {
"us" : 17385392
},
...您可以使用 well-known JS techniques 来检测用户何时登陆页面以及何时离开,然后您可以利用 Transactions API 来衡量一个系列所花费的时间用户在您的页面上时发生的事件。