分析工作流程

improve this page | report issue


概述

利用 IBM MobileFirst Foundation Operational Analytics 最好地满足您的业务需要。 在识别您的目标之后,使用 Analytics 客户机 SDK 来收集相应的数据,并使用 MobileFirst Analytics Console 来构建报告。 以下典型场景将演示收集和报告分析数据的方法。

跳转至

应用程序使用情况分析

初始化您的客户机应用程序以捕获应用程序使用情况

应用程序使用情况可度量将特定应用程序切换至前台然后发送至后台的次数。 要在移动应用程序中捕获应用程序使用情况,MobileFirst Analytics 客户机 SDK 必须配置为侦听应用程序生命周期事件。

您可以使用 MobileFirst Analytics API 来捕获应用程序使用情况。 确保您已先创建相关的设备侦听器。 然后将数据发送到服务器。

iOS

AppDelegate.m/AppDeligate.swift 文件内的应用程序委托 application:didFinishLaunchingWithOptions 方法中添加以下代码。

Objective-C

WLAnalytics *analytics = [WLAnalytics sharedInstance];
[analytics addDeviceEventListener:LIFECYCLE];

要发送分析数据:

[[WLAnalytics sharedInstance] send];

Swift

WLAnalytics.sharedInstance().addDeviceEventListener(LIFECYCLE);

要发送分析数据:

WLAnalytics.sharedInstance().send;

Android

在应用程序子类 onCreate 方法中添加以下代码。

WLAnalytics.init(this);
WLAnalytics.addDeviceEventListener(DeviceEvent.LIFECYCLE);

要发送分析数据:

WLAnalytics.send();

Cordova

对于 Cordova 应用程序,必须使用本机平台代码创建侦听器,类似于 iOS 和 Android 应用程序。 将数据发送到服务器:

WL.Analytics.send();

Web 应用程序

对于 Web 应用程序,不需要任何侦听器。 可以通过 WLlogger 类来启用和禁用分析。

ibmmfpfanalytics.logger.config({analyticsCapture: true});                
ibmmfpfanalytics.send();

缺省的“使用情况”和“设备”图表

在 MobileFirst Analytics Console 的“应用程序”部分的使用情况和设备页面中,提供了一些缺省图表以帮助您管理应用程序使用情况。

设备总数

设备总数图表显示设备总数。

应用程序会话总数

应用程序会话总数图表显示应用程序会话总数。 将应用程序切换至设备前台时,将记录一个应用程序会话。

活动用户数

活动用户图表显示以下数据的交互式多线图。

  • 活动用户 - 所显示时间范围的非重复用户。
  • 新用户 - 所显示时间范围的新用户。

缺省显示的时间范围为一天,每个小时一个数据点。 如果将显示的时间范围更改为大于一天,那么数据点将反映每天。 您可以单击图例中对应的键来切换是否显示此线。 缺省情况下,将显示所有键,不能切换所有键以不显示所有行。

要在折线图中查看最准确的数据,必须检测您的应用程序代码以通过调用 setUserContext API 来提供 userID。 如果为 userID 值提供匿名,那么必须先散列值。 如果未提供 userID,那么缺省情况下使用设备的标识。 如果多个用户使用一个设备并且未提供 userID,那么折线图无法反映准确数据,因为会将设备标识视为一个用户。

应用程序会话

应用程序会话图表显示随时间推移应用程序会话的条形图。

应用程序使用情况

应用程序使用情况图表显示每个应用程序的应用程序会话百分比的饼图。

新设备

新设备图表显示随时间推移新设备的条形图。

型号使用情况

型号使用情况图表显示每个设备型号的应用程序会话百分比的饼图。

操作系统使用情况

操作系统使用情况图表显示每个设备操作系统的应用程序会话百分比的饼图。

为平均会话持续时间创建定制图表

应用程序会话的持续时间是可直观显示的有价值的指标。 对于任何应用程序,您都想了解用户花费于特定会话的时间量。

  1. 在 MobileFirst Analytics Console 中,单击“仪表板”部分的定制图表页面中的创建图表
  2. 为您的图表指定一个标题。
  3. 针对事件类型选择应用程序会话
  4. 针对图表类型选择条形图
  5. 单击下一步
  6. 针对 X 轴选择时间线
  7. 针对 Y 轴选择平均值
  8. 针对属性选择持续时间
  9. 单击保存

崩溃捕获

MobileFirst Analytics 包含有关应用程序崩溃的数据和报告。 将自动与其他生命周期事件数据一起收集此数据。 崩溃数据由客户机收集,并且会在应用程序再次启动和运行后发送至服务器。

发生未捕获异常并导致程序进入不可恢复状态时会记录为应用程序崩溃。 在应用程序关闭之前,MobileFirst Analytics SDK 会记录崩溃事件。 通过下一个 logger send 调用将此数据发送至服务器。

初始化应用程序以捕获崩溃数据

要确保崩溃数据被收集并包含在 MobileFirst Analytics Console 报告中,请确保将崩溃数据发送至服务器。

确保按照初始化您的客户机应用程序以捕获应用程序使用情况中所述收集应用程序生命周期事件。

必须在应用程序重新运行后发送客户机日志,以便获取与崩溃关联的堆栈跟踪。 使用计时器确保定期发送日志。

iOS

Objective-C

- (void)sendMFPAnalyticData {
  [OCLogger send];
  [[WLAnalytics sharedInstance] send];
}

// then elsewhere in the same implementation file:

[NSTimer scheduledTimerWithTimeInterval:60
  target:self
  selector:@selector(sendMFPAnalyticData)
  userInfo:nil
  repeats:YES]

Swift

overridefuncviewDidLoad() {
       super.viewDidLoad()
       WLAnalytics.sharedInstance();
       lettimer = NSTimer.scheduledTimerWithTimeInterval(10, target: self, selector: #selector(sendMFPAnalyticData), userInfo: nil, repeats: true);
       timer.fire();
       // Do any additional setup after loading the view, typically from a nib.
   }

   funcsendMFPAnalyticData() {
       OCLogger.send()
       WLAnalytics.sharedInstance().send()
   }

Android

Timer timer = new Timer();
timer.schedule(new TimerTask() {
  @Override
  public void run() {
    Logger.send();
    WLAnalytics.send();
  }
}, 0, 60000);

Cordova

setInterval(function() {
  WL.Logger.send();
  WL.Analytics.send();
}, 60000)

Web

setInterval(function() {
  ibmmfpfanalytics.logger.send();
}, 60000);

应用程序崩溃监控

在崩溃之后,如果重新启动应用程序,会将崩溃日志发送至 MobileFirst Analytics Server。 您可以在 MobileFirst Analytics Console的仪表板部分中快速查看有关应用程序崩溃的信息。
仪表板部分的概述页面中,崩溃条形图将显示随时间推移崩溃的直方图。

可以按照以下两种方式显示数据:

  • 显示崩溃率:随时间变化的崩溃率
  • 显示总崩溃次数:随时间变化的总崩溃次数

注:“崩溃”图表将查询 MfpAppSession 文档。 您必须检测应用程序以收集应用程序使用和崩溃次数,使数据显示在图表中。 如果未收集 MfpAppSession 数据,那么将查询 MfpAppLog 文档。 在这种情况下,该图表可以计算崩溃次数,但是无法计算崩溃率,因为应用程序使用次数未知,这将导致以下限制:

  • 当选择显示崩溃率 时,崩溃条形图不显示任何数据。

崩溃的缺省图表

在 MobileFirst Analytics Console的应用程序部分的崩溃页面中,提供了一些缺省图表以帮助您管理应用程序崩溃。

崩溃概述图表将显示崩溃概述表。
崩溃条形图显示崩溃次数随时间变化的直方图。 您可以按崩溃率或总崩溃次数来显示数据。 “崩溃”条形图也位于“应用程序”部分的“崩溃”页面中。

崩溃摘要图表显示崩溃摘要的可排序表。 您可以通过单击 + 图标来展开个别崩溃,以查看崩溃详细信息表,其中包含有关崩溃的更多详细信息。 在“崩溃详细信息”表中,可以单击 > 图标以查看有关特定崩溃实例的更多详细信息。

应用程序崩溃故障诊断

您可以查看 MobileFirst Analytics Console的应用程序部分中的崩溃页面,以更好地管理您的应用程序。

崩溃概述表显示以下数据列:

  • 应用程序:应用程序名称
  • 崩溃:该应用程序的崩溃总数
  • 总使用次数:用户打开并关闭该应用程序的总次数
  • 崩溃率:崩溃次数占使用次数的百分比

崩溃条形图是显示在仪表板部分的概述页面中的相同图表。

注:这两个图表均查询 MfpAppSession 文档。 您必须检测应用程序以收集应用程序使用和崩溃次数,使数据显示在图表中。 如果未收集 MfpAppSession 数据,那么将查询 MfpAppLog 文档。 在这种情况下,这些图表可以计算崩溃次数,但是无法计算崩溃率,因为应用程序使用次数未知,这将导致以下限制:

  • “崩溃概述”表的“总使用次数”和“崩溃率”列为空。
  • 当选择“显示崩溃率”时,“崩溃”条形图不显示任何数据。

崩溃摘要表可排序,包含以下数据列:

  • 崩溃
  • 设备
  • 上次崩溃
  • 应用程序
  • 操作系统
  • 消息

您可以单击任意条目旁的 + 图标,以显示包含以下各列的崩溃详细信息表:

  • 崩溃时间
  • 应用程序版本
  • 操作系统版本
  • 设备型号
  • 设备标识
  • 下载:用于下载一直到发生此崩溃时的日志的链接

您可以展开崩溃详细信息表中的任何条目,以获取包含堆栈跟踪在内的更多详细信息。

注:通过查询严重级别的客户机日志来填充崩溃摘要表的数据。 如果您的应用程序未收集严重客户机日志,将没有可用数据。

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on June 01, 2020