为了更直观的验证各功能模块的接入情况,您可以使用线下插件。应用接入SDK后,线下插件可以在应用界面展示各功能模块是否开启和数据是否上报。
注意
本插件主要用于线下验证,因此插件本身的性能不做保障,建议您仅在开发验证或者内测阶段开启,用于新模块接入的验证以及功能回归。
在 Podfile 中,添加如下示例代码。插件对 RangersAPM SDK 的版本有要求,版本限制请参见SDK更新日志。
source 'https://github.com/volcengine/volcengine-specs.git' pod 'RangersAPMDoctor', '2.0.0'
执行以下命令,安装插件。
pod install
请在性能监控组件初始化前调用以下方法,否则无法确保可以顺利校验性能监控组件的各项功能。
#import <RangersAPM+Doctor.h> [RangersAPM setDoctorEnabled:YES];
通过这种方式初始化插件页面,您可以在应用的任意页面看到一个悬浮窗,单击悬浮窗即可进入验证数据上报的界面。
#import <RangersAPM+Doctor.h> //使用 AppDelegate 时 windowScene 可以传 nil,在代码任意位置调用初始化方法即可 [RangersAPM setupWindowWithAppID:@"xxxxxx" windowScene:nil]; //使用 SceneDelegate 时需要配置正确的 windowScene - (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions { [RangersAPM setupWindowWithAppID:@"xxxxxx" windowScene:scene]; }
通过这种方式初始化插件页面,您可以把插件页面嵌入到您的应用任意页面中。
注意
页面需要通过 navigationController pushViewController 的方式展开,否则二级页面无法正常展开。
#import <RangersAPM+Doctor.h> UIViewController *doctorView = [RangersAPM generateViewControllerWithAppID:appID]; [self.navigationController pushViewController:doctorView animated:YES];
完成初始化插件后,您可以在插件中查看调试页面。目前将所有验证内容分为三项,单击后分别进入二级页面:
单击后进入二级页面,展示各项可能全局影响数据上报的配置,左侧展示的是配置项,右侧展示的是检测结果,检测结果按钮根据是否通过会显示不同的颜色,通过时显示为绿色,未通过时显示为红色。
单击后进入二级页面,展示各个性能监控模块的开关和数据上报情况,左侧展示的是模块名称,右侧展示的是检测结果,包括开关状态和上报情况,检测结果按钮根据是否通过会显示不同的颜色,通过时显示为绿色,未通过时显示为红色。
单击后进入二级页面,展示各个埋点的上报情况,页面以列表的形式展示,从左到右依次展示埋点记录的时间、埋点的名称和检测结果。检测结果按钮根据是否通过会显示不同的颜色,通过时显示为绿色,未通过时显示为红色。
注意
如果您没有调用 SDK 的接口记录埋点,则本页面不会展示任何数据,添加埋点的方式可以参考事件分析。
如果通过插件提供的信息依然无法解决您的接入问题,请您向技术支持提供如下材料寻求帮助:
没有要求。
插件本身的性能不做保证,接入后对性能监控组件有轻微的影响,因此建议您仅在线下测试或者内测阶段接入。
插件每 5s 刷新一次页面展示数据,记录日志后可以稍等片刻再查看。
可以在 SDK上报配置页面查看是否配置了版本黑名单。
平台的数据处理需要一定时间,上报的数据一般情况下会在 1min~5min 处理完毕。如果长时间看不到数据,可以提供相关材料给技术支持。详情请参见步骤五:问题反馈。