You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
合作与生态
支持与服务
开发者
了解我们
导航

Flutter监控

更新时间:2023.05.18 17:58:39

FPM全称为Flutter Performance Monitor,是基于Flutter官方引擎实现的性能监控插件,主要用于监控Flutter页面的异常与整体性能数据、聚合URL粒度下可视化图表、异常分析和追踪的展示。目前仅支持国内应用,主要功能包括异常监控(白屏检测)、页面测速、流畅性和丢帧分析、大盘数据。

Flutter页面列表

筛选维度

您可以通过以下筛选条件进行数据筛选。
图片
支持的筛选维度:
时间、系统、系统版本、机型、APP版本、APP小版本号、下载渠道、自定义维度。

数据列表

Flutter页面列表中展示了Flutter所有页面以及相关的指标。
图片
指标说明:

指标名称

计算公式或说明

Dart异常数

Dart异常个数

Dart异常用户数

Dart异常用户的去重后个数

Dart异常率

Dart异常数/启动过Flutter的session数

  • session数和native的计算口径一致
  • 启动过Flutter是指计算session时Flutter是启动的。

Dart异常影响用户率

Dart异常用户的去重后个数/启动过Flutter的去重后session数

页面Dart异常率

页面发生Dart异常数/页面PV(有页面筛选时,分母取页面PV)

页面Dart异常影响用户率

页面发生Dart异常影响用户数/去重后的页面PV(有页面筛选时,分母取页面PV-DID去重)

选择指标:单击列表左上方的选择指标可查看更多指标,您可以根据业务需求勾选需要展示的指标。
图片

Dart异常

应用稳定性直接关系到业务的触达。本项目支持无侵入式监控Dart异常、白屏异常(指widget build error造成,非页面打开慢等待的白屏),同时支持Dart异常处理人的分配到修改。
Dart异常提供了Dart层的异常监控与分析能力。整体上分为大盘指标概览以及issue详情分析。

全部异常

您可以通过以下筛选条件进行数据筛选。

筛选维度

您可以通过以下筛选条件进行数据筛选。
图片
支持的筛选维度:
时间、系统、issue新增状态、白屏状态、进程状态、issue状态、处理人、标签、异常详情、设备ID、页面、设备系统版本、设备机型、APP版本、下载渠道、APP小版本号、自定义维度。

大盘概览

图片
Dart全部异常大盘提供了筛选条件下异常数、异常率、异常用户数、异常用户比例这4个指标的趋势图。
指标说明:

指标

说明

异常数

筛选条件下的异常总个数

异常率

筛选条件下的异常总个数/启动过的Dart Session数

说明

有页面筛选时,分母取页面PV。

异常用户数

筛选条件下的异常用户去重数

异常用户比例

筛选条件下的异常用户去重数/启动过的去重Dart session数

说明

有页面筛选时,分母取页面PV-DID去重。

异常列表

图片

  • 异常列表列数据:默认展示异常说明、最近发生时间、是否白屏异常、Dart异常率、Dart异常影响用户比例、状态、处理人。
  • 下载:单击右上角下载按钮,下载前10000条数据,以.xlsx的文件格式展示列表中的数据。
  • 设置:单击右上角设置按钮,除了默认勾选的列,您还可以根据需求选择展示其他指标的列数据,包括同比Dart异常率、同比Dart异常影响用户比例、起止版本。其中,异常说明列数据必须展示,无法取消勾选。
  • 异常说明:单击具体的异常说明跳转到issue详情页。

白屏异常

筛选维度

您可以通过以下筛选条件进行数据筛选。
图片
支持的筛选维度:
时间、系统、issue新增状态、进程状态、issue状态、处理人、标签、异常详情、设备ID、页面、设备系统版本、设备机型、APP版本、下载渠道、APP小版本号、自定义维度。

大盘概览

图片
在白屏异常页签里,指标内容含义为Dart异常引起的白屏数、Dart异常引起的白屏所影响的用户数、Dart异常白屏率、Dart异常白屏影响用户率。
指标说明:

指标

说明

异常数

筛选条件下的白屏异常总个数

异常率

筛选条件下的白屏异常总个数/启动过的Dart Session数

说明

有页面筛选时,分母取页面PV。

异常用户数

筛选条件下的白屏异常用户去重数

异常用户比例

筛选条件下的白屏异常用户去重数/启动过的去重Dart session数

说明

有页面筛选时,分母取页面PV-DID去重。

异常列表

图片

  • 异常列表列数据:默认展示异常说明、最近发生时间、是否白屏异常、Dart异常率、Dart异常影响用户比例、状态、处理人。
  • 下载:单击下载按钮,下载前10000条数据,以.xlsx的文件格式展示列表中的数据。
  • 设置:单击设置按钮,除了默认勾选的列,您还可以根据需求选择展示其他指标的列数据,包括同比Dart异常率、同比Dart异常影响用户比例、起止版本。其中,异常说明列数据必须展示,无法取消勾选。
  • 异常说明:单击具体的异常说明跳转到issue详情页。具体信息,请参见issue详情分析

issue详情分析

摘要

图片
您可以查看该类issue的摘要信息,同时可以通过维度对错误指标进行分析。

异常分布

图片
您可以查看该类issue中每一条错误事件中,您的用户的设备信息、版本信息等。

异常趋势

图片
您可以查看筛选时间范围内错误数分布在哪个时间段。

详细信息

图片
您可以查看该issue发生时的详细信息。

原始堆栈

图片
在原始堆栈中,您可以查看发生错误的混淆堆栈,如果上传了符号表,则可以查看解析后的堆栈。

页面追踪

图片
在页面追踪中,您可以查看您的用户在发生该错误前后的操作行为记录,除了系统自动收集的请求类型,还支持自定义埋点的交互事件类型。

现场数据

图片
现场数据中除了系统自动采集的维度外,支持上报自定义维度。

Flutter页面体验

Flutter页面体验模块主要是展示Flutter页面的响应情况,包括加载耗时分解、流畅性分析、丢帧情况分析、慢页面追踪等功能。

页面测速

页面加载时长是一个非常重要的体验指标,是影响用户留存的核心因素,本项目支持无侵入式监控页面加载过程中关键节点的耗时。指标包括FP(首次绘制时间)、FCP(首次内容绘制时间)、FMP(首次有效绘制时间)。同时还会进行慢页面分析,让用户更直观地了解慢页面的占比趋势。

筛选维度

您可以通过以下筛选条件进行数据筛选。
图片
支持的筛选维度:
时间、系统、页面、设备系统版本、APP版本、下载渠道、设备机型、国家、省份、城市、APP小版本号。

关键耗时趋势

图片

  • 关键指标:关键耗时趋势支持首次绘制时间(FP)、首次内容绘制时间(FCP)、首次有效绘制时间(FMP)三个指标的趋势。
  • 平均值:默认展示指标的平均值的趋势,支持配置为25分位、50分位、75分位、90分位、

耗时区间分布

图片

  • 耗时区间分布:默认按照首次绘制时间(FP)展示各个耗时区间的样本量所占比例。
  • 指标:除了首次绘制时间(FP),还可以配置为首次内容绘制时间(FCP)、首次有效绘制时间(FMP),趋势图中将按照配置的指标来展示各个耗时区间的样本量所占比例。

跳失率趋势图

图片
以FCP为例,FCP跳失率 = FCP为nil的个数 / flutter_page_load_event总上报量

多维分析

图片

  • 多维分析:支持查看耗时指标各维度的占比分布。
  • 选择维度:您可以配置最多4个维度,默认展示的维度为设备机型、系统版本、下载渠道、APP版本。支持配置的维度有SDK版本、国家、省份、城市、运营商、接入网络。

流畅性和丢帧

Flutter页面性能媲美原生页面的关键点之一就是具备良好的流畅度,本项目支持无侵入式监控页面的FPS。同时对页面丢帧信息进行分析、评分,让用户更好地感知页面丢帧的严重程度,直击卡顿重灾区。

筛选维度

您可以通过以下筛选条件进行数据筛选。
图片
支持的筛选维度:
时间、系统、页面、设备系统版本、APP版本、下载渠道、设备机型、国家、省份、城市、APP小版本号。

FPS分位值趋势图

图片

  • FPS分位值:支持显示50%分位值、75%分位值、95%分位值、99%分位值、平均值在时间范围内的趋势。
  • 鼠标悬停:悬停在对应的时间点上,可以查看该时间点对应的50%分位值、75%分位值、95分位值、99分位值、平均值。

FPS流畅度分布

图片

  • FPS流畅度:按照FPS_FAST、FPS_NORMAL、FPS_BAD三个维度来衡量:
    • FPS_FAST:FPS > 50
    • FPS_NORMAL:FPS 40~50
    • FPS_BAD:FPS < 40
  • FPS_BAD增长率:以趋势图的形式展示,便于查看FPS_BAD的走势。
  • 鼠标悬停:悬停在对应的时间点上,可以查看该时间点对应的FPS_FAST、FPS_NORMAL、FPS_BAD、FPS_BAD增长率。

详情信息

图片

  • 置顶:列表支持关键页面置顶,对掉帧原因进行归因
  • 提供FPS详情和丢帧详情。

FPS详情

FPS详情展示该页面的FPS分位值趋势图、FPS流畅度分布,以及该页面的APP或者机型版本排行。

丢帧详情

丢帧详情展示了该页面的严重丢帧率、丢帧趋势、丢帧分布及样本量分布图。

严重丢帧率

图片
丢帧评分用于统计每次滑动过程中,每一个区间发生了多少次丢帧。

区间段

0

1

2

3

4

5

丢帧数

0

1~2

3~6

7~13

14~24

> 25

卡顿时长(ms)

0

16~32

48~96

112~208

224~384

400

例如{0:12, 1:5, 2:10},表示这期间:

  • 有12次绘制的回调间隔小于16ms,没有发生丢帧。
  • 有5次绘制回调的间隔在 (1~2) * 16ms之间。
  • 有10次绘制回调的间隔在 (3~6) * 16ms * 22之间。
    假设滑动时长2000ms,则评分=( 0 * 16 * 2^0 * 12 + 1 * 16 * 2^1 * 5 + 2 * 16 * 2^2 * 10) / 2000 = 0.72。
    丢帧评分可分为四个区间:
  • 正常丢帧:0~3
  • 轻微丢帧:3~9
  • 一般丢帧:9~25
  • 严重丢帧:≥ 25
    因此,0.72对应为正常丢帧。
丢帧趋势

图片

丢帧分布

图片

样本量分布

图片

异常统计和追踪

筛选维度

您可以通过以下筛选条件进行数据筛选。
图片
支持的筛选维度:
时间、系统、页面、设备系统版本、APP版本、下载渠道、设备机型、国家、省份、城市、APP小版本。

慢页面分析

查看慢页面的发生趋势及多维分析,此处为页面视角的查询,且支持针对特定页面的查询。
图片

  • 慢页面阈值:支持单击设置按钮,进入平台参数配置页面设置慢页面阈值。
  • 设置:跳转到平台参数配置慢页面阈值。

多维分布

图片

慢页面列表

查看慢页面发生的单点信息,包含发生时间、Device ID、页面、耗时、App版本、操作系统、设备型号。
图片