背景

当用户 APP 或小程序购买商品,遇到突然闪退,请求超时或者下单失败,前端页面响应慢等终端问题,可能会直接导致用户流失。

这种看似简单的终端问题,既可能是前端程序问题导致,也可能是因为中间件或数据库故障或者后端服务的错误。有时候在前端排查出异常,也很难直接定位到后端哪个应用或服务导致的,无法明确给出确定性的根因。

前后端一般通过请求进行交互,当服务出现异常时,开发人员需要回溯当时所有操作,进行异常分析与定位。单点监控导致前后端数据无法串联,无法完整回溯所有行为,且定位问题成本较高。

用户终端发起请求开始,到服务器执行完把结果返回给用户,整条链路要经过多个前后端相关的环节,如下图所示。并且一些服务模块之间的调用关系错综复杂,对于客户端请求的分析与处理就会显得异常复杂。对于多数企业来说,使用开源自建方案实现前后端链路打通,有较高学习成本和人力成本,同时也容易遇到性能瓶颈,需要频繁调优,后期维护成本和资源投入成本也较高。

为了解决此类问题,腾讯云前端性能监控 (RUM)联合腾讯云应用性能观测 (APM) 推出前后端链路打通方案,实现前后端可观测性全覆盖,可将 API 请求从前端发出到后端调用的链路串联,真实还原代码执行的完整故障现场。同时还支持 API 错误诊断、异常信息告警、场景化链路拓扑分析、多维分析等功能。帮助企业先于用户发现问题,快速排障,保障终端顺畅使用。

操作文档

步骤流程:

说明:
目前仅支持前后端均使用 Skywalking 协议的上报方式。

步骤一:接入 RUM SDK

  1. 登录前端性能监控控制台

https://console.cloud.tencent.com/rum)

  1. 在左侧菜单栏点击 应用管理>业务系统>创建业务系统,根据页面提示创建业务系统。

  2. 进入数据总览页,单击应用接入,根据提示配置应用基本信息。

  3. 配置完后单击下一步,进入应用接入页面。根据页面提示接入 RUM SDK,并初始化 SDK。

说明:
详细接入步骤可参考前端性能监控应用接入官方文档:https://cloud.tencent.com/document/product/1464/58145。

步骤二:前端引入 Skywalking SDK

在前端页面引入 Skywalking SDK。引入示例如下:

ClientMonitor.register({    collector: 'https://xxx.yy.com', // 上报域名,前面配置跨域的    service: 'service-name',    pagePath: location.href,    serviceVersion: 'v1.0.0',    useFmp: true,    autoTracePerf: true,    traceSDKInternal: true,    enableSPA: true,    traceTimeInterval: 2000,    noTraceOrigins: [/aegis.qq.com/] // 需要屏蔽上报的接口});

步骤三:后端使用 Skywalking 方式接入 APM

1. 在应用性能观测-资源管理页新建业务系统。

https://console.cloud.tencent.com/apm/monitor/team)

team)

2. 进入探针部署页面,选择对应的业务系统,选择对应的语言和 Skywalking 方式接入应用。

  1. 单击下一步:探针部署,根据探针部署步骤进行应用接入。

步骤四:验证 APM 和 RUM 是否上报正常

1. 验证 APM 是否上报正常

在资源管理页面查看是否有数据上报量,若有数据上报则表示上报成功。

2. 验证 RUM 是否上报正常

在页面性能查看是否有数据显示,若有数据上报则表示上报成功。

步骤五:前后端联动排查问题

当接口发生请求,产生历史日志时,您在历史日志可以选择字段选择 Trace,若该日志有 TraceID ,可左键单击 TraceID。在弹框中单击自定义跳转配置,绑定 APM 业务系统。

绑定后,单击相关链接即可调整到 APM 链路详情页。通过 TraceID 实现调用链路追踪,排查后端异常原因。

前端性能监控相关文档推荐:

联系我们

如有任何疑问,欢迎扫码进入官方交流群~


欢迎关注腾讯云监控,了解最新动态

👇点击阅读原文了解可观测性平台

文章来源于腾讯云开发者社区,点击查看原文