Flutter监控
功能概述
此页面展示 Flutter 应用的异常数据(U-APM 捕获 Dart 代码异常)。
SDK 版本要求
使用前需满足以下 SDK 版本要求:
类型 | 平台 / 场景 | SDK 版本要求 |
原生端 | Android | Common ≥ 9.5.3,APM ≥ 1.9.3 |
iOS | Common ≥ 7.3.8,APM ≥ 1.8.4 | |
HarmonyOS Next | @umeng/common ≥ 1.1.12,@umeng/analytics ≥ 1.2.12,@umeng/apm ≥ 1.3.0 | |
Flutter 跨端 | 含 HarmonyOS Next | 鸿蒙 Flutter SDK ≥ 3.7.12,umeng_common_sdk ≥ 1.3.1,umeng_apm_sdk ≥ 2.3.7 |
不含 HarmonyOS Next | Flutter SDK ≥ 2.0.0,umeng_common_sdk ≥ 1.2.6,umeng_apm_sdk ≥ 2.0.0 |
按照以上版本要求升级后即可自动采集数据。
名词解释
错误数:发生的Dart异常次数
错误率:错误率 = 错误数 / 应用启动次数
影响用户数:发生的Dart异常数根据umid排重
影响用户占比:影响用户占比=影响用户数/活跃用户数
错误页面数:发生的Dart异常数根据页面加载排重
错误页面占比:错误页面数/Flutter页面pv
环比上涨20%的Dart异常:按照当前所选的时间段,计算Dart异常数参考环比时间段增长超过20%的异常个数
占比超过20%的Dart异常:按照当前所选的时间段,计算Dart异常数占Dart异常总量超过50%的异常个数
影响用户超过0.1%的Dart异常:按照当前所选时间,计算Dart异常影响的用户占比超过0.1%的异常个数
页面首次绘制时间FP:从路由跳转到首帧绘制的耗时
页面首次有效内容绘制时间FCP:从路由跳转到内容首帧绘制的耗时
页面可交互时间TTI:从路由跳转到页面可以交互的耗时
FP跳失率:在FP上报前跳出页面的会话数 / 总会话数
FCP跳失率:在FCP上报前跳出页面的会话数 / 总会话数
TTI跳失率:在TTI上报前跳出页面的会话数 / 总会话数
正常加载次数:页面加载时长(页面可交互时间TTI - 开始跳转页面时间) < 慢加载阈值的页面访问次数
慢加载次数:页面加载时长(页面可交互时间TTI - 开始跳转页面时间)> 慢加载阈值的页面访问次数
慢加载占比:慢加载页面次数 / pv次数
初始化帧率:页面初始化期间每秒钟显示的画面帧数
滚动帧率:页面滚动期间每秒钟显示的画面帧数
注:通用维度说明请参考术语表
功能介绍
Dart异常
错误趋势
在一定筛选条件与时间范围内,错误次数、错误率、影响用户数、影响用户占比、错误页面数和错误页面占比的图表趋势,可以选择应用版本进行对比。
1.时间范围
支持最近(基础版 7天,专业版90天)的数据查询

2.维度筛选
支持Native应用版本、Flutter应用版本、设备、操作系统、运营商、渠道、网络、前后台状态、地域、标签、错误级别、错误细类的维度筛选
错误级别:您可以通过定义错误级别指引用户处理优先级,下拉框可选项包括ErrorWidget、Error、Exception
错误细类:您可以通过错误细类进一步确定问题类型和处理优先级,下拉框可选项包括CastError、RangeError、PlatformException、NoSuchMethodError、MissingPluginException等,
3.是否白屏异常
支持筛选Dart白屏异常/Dart非白屏异常,即异常是否导致白屏
您可以从用户体验角度确定处理高优先级
4.高级功能
新增异常:在时间范围与筛选维度条件下,首次生成错误ID的异常(错误ID是错误摘要唯一识别)
屏蔽引擎级别的错误:如果错误中堆栈无业务内容,则被判定为引擎级别错误。您可以屏蔽引擎级别错误,以便专注于分析业务错误。
过滤匿名路由:即过滤非命名路由,其中可能包括showDialog、showMenu、showModalBottomSheet等方法,这些方法本质上是创建了一个路由页面并push在当前屏幕上
只看自定义异常
5.用户查询
可以直接搜索某用户的异常情况,需要输入用户ID或者UMID


错误列表
在时间范围与筛选维度条件下,所有错误日志按照崩溃摘要进行聚合后的错误列表。
错误排行:默认按照错误次数降序展示,帮助您快速的找到错误次数最多、影响最严重的错误。您也可以选择按照影响人数/错误页面数排行,找到影响面积最大的错误。
错误ID:错误摘要的唯一ID
最近一次时间:此错误最近一次上报的时间
Flutter应用版本:此错误发生的Flutter应用版本
版本范围:在当前筛选条件下,该崩溃发生的版本范围
错误次数、影响用户数、错误页面数:此错误发生的核心指标
处理状态:该错误的处理状态,支持设置状态包括未修复、处理中、已忽略、已修复
告警设置:您可以对单个错误进行告警设置,在该位置添加的告警可在监控告警中修改和设置,点击了解告警详情。
导出:导出当前展示的错误列表内容,一次导出最多支持1000条

错误分布
在时间范围与筛选维度条件下,按照Native应用版本、Flutter应用版本、设备机型、操作系统、运营商、页面、渠道、地域、前后台状态分布、白屏等11个维度的分布图。
TOP5:错误次数的TOP5排行情况
错误分布详情:该维度下,各属性值对应的错误次数与影响用户数明细,支持在表头筛选具体属性。

错误详情
将错误摘要相同的错误日志聚合在一起,展示其详细信息,帮助您快速定位问题、解决问题。

错误明细模块中,您可以查看设备明细,并且可以对此设备进行用户会话追踪


下方还可以查看错误的详细日志和自定义字段(Flutter端没有Native端的行为日志、内存快照和Logcat模块)

符合表管理
如果想要管理Dart符号表,可以去【设置管理】-【符号表管理】页面,上传Dart符号表时需要筛选或者输入Flutter应用版本号+构建号

Flutter符号表管理生成请参考文档Flutter Dart 符号表
页面性能概况
关键耗时指标
在一定筛选条件与时间范围内,查看页面首次绘制时间FP、页面首次有效内容绘制时间FCP、页面可交互时间TTI等指标的统计数据与趋势图
1.时间范围
支持最近(基础版 7天,专业版90天)的数据查询
2.维度筛选
支持Native应用版本、Flutter应用版本、设备、操作系统、运营商、渠道、网络、地域、页面的维度筛选
3.用户查询
可以直接搜索某用户的情况,需要输入用户ID或者UMID

4.指标统计与趋势图
您可以查看FP、FCP、TTI在所选时间内的数据统计、环比和趋势图详情,包括平均值、50%分位值、90%分位值、95%分位值四种不同的统计方式。

耗时区间分布
您可以在此模块查看FP、FCP、TTI在不同耗时区间的详细分布情况,指标在右上角切换支持多选,每500ms是一个区间

跳失率趋势
您可以在此模块查看FP跳失率、FCP跳失率、TTI跳失率三个指标的概况统计、环比和趋势明细图

维度分布
您可以查看不同指标的多种维度分布情况,右上角可以切换指标,包括FP、FCP、TTI、FP跳失率、FCP跳失率、TTI跳失率。可查看的维度分布包括了Native应用版本分布、Flutter应用版本分布、设备分布、系统分布、运营商分布、页面分布、渠道分布、网络分布、地域分布

流畅性分析
您可以在此页面查看Flutter应用的FPS(每秒传输帧数)数据情况.
FPS分布
1.时间范围
支持最近(基础版 7天,专业版90天)的数据查询
2.维度筛选
支持Native应用版本、Flutter应用版本、设备、操作系统、运营商、渠道、网络、地域、页面的维度筛选
3.帧率类型
可选项有全部、初始化帧率和滚动帧率三种
4.帧率筛选
可选项有60帧率、90帧率、120帧率、144帧率四种
5.用户查询
可以直接搜索某用户的情况,需要输入用户ID或者UMID

6.指标统计与趋势图
支持查看FPS分布占比,包含平均值、50%分位值、90%分位值、95%分位值和样本分布占比。FPS流畅度的阈值可以点击右上角设置。

Flutter监控有采样率,根据您的套餐和设置的情况可能有所不同(免费版默认200条/天,专业版最高支持500条/天,尊享版最高1000条/天),此处的数据为使用所有采集到的样本量计算得出
页面列表
您可以在这个模块查看不同页面的FPS指标明细数据

如想要设置页面别名,快捷方式是在点击右侧的编辑按钮,可以输入此页面的别名,如果已设置页面名称和页面别名会同时显示,如果未设置则只显示页面名称

另外一种方式是点击右上角的【页面设置】,跳转到Flutter页面设置页进行别名的添加和编辑

维度分布
您可以查看FPS指标的多种维度分布情况,可查看的维度分布包括了Native应用版本分布、Flutter应用版本分布、设备分布、系统分布、运营商分布、页面分布、渠道分布、网络分布、地域分布

慢加载分析
此页面用于分析Flutter应用慢加载情况。其中,慢加载是根据页面加载时长筛选出加载时长过长的加载次数,您可以点击右上角中的阈值设置来配置慢加载的阈值,设置后即时生效,默认值是大于3秒判定为慢加载

核心指标
1.时间范围
支持最近(基础版 7天,专业版90天)的数据查询
2.维度筛选
支持Native应用版本、Flutter应用版本、设备、操作系统、运营商、渠道、网络、地域、页面的维度筛选
3.用户查询
可以直接搜索某用户的情况,需要输入用户ID或者UMID
4.指标统计与趋势图
您可以查看正常加载次数、慢加载次数、慢加载占比的指标统计、环比和趋势图

慢加载耗时
此模块展示了慢加载耗时的平均值、耗时50%分位值、90%分位值、95%分位值、2秒慢开占比和5秒慢开占比的指标统计、环比和趋势图
2秒慢开占比定义:完全加载时长>2秒的PV占比
5秒慢开占比定义:完全加载时长>5秒的PV占比

页面列表与页面详情
列表中支持查看页面的加载明细数据
设置页面别名的方式同【流畅性分析】页面一致

页面慢加载详情:在页面列表右侧,可以点击【慢加载详情】,就可以查看每次慢加载的详细信息。您可以查看发生在同一页面下的多次慢加载的设备信息和加载时序图。加载时许图中包含跳转耗时、FP耗时、FCP耗时、TTI耗时数据。

慢加载分布
可查看慢加载数据在不同维度下的分布情况,支持的维度同上

HTTP
您可以在此页面查看Flutter HTTP的性能相关统计情况,包含吞吐量、总耗时、传输数据量等指标。支持查看整体统计、域名以及URL的层级统计,您也可以筛选自身和第三方域名分别查看。
1. 网络设置
点击Flutter HTTP页面中的「网络设置」按钮后弹出弹窗,用户可以自定义网络慢请求的阈值以及设置自身服务列表。慢请求阈值默认为5秒,精确到小数点后两位,最小0.01s,最大60.00s。请注意填写域名格式为:www.xxxxx.com 。设置自身域名后,HTTP页面中的域名可以通过自身筛选,不是自身的域名被定义为第三方域名。

2.整体概况
域名列表中展示所有请求过的域名,可以通过域名列表的排序指标更改列表的域名排列顺序,当前支持通过吞吐量、总耗时和传输数据量进行排序。
页面中的大数字卡片中,HTTP包含吞吐量、总耗时和传输数据量三个指标。数据统计指标默认展示全部域名的指标情况,可以通过卡片右上角的筛选条件选择左侧列表中的前5个/前10个/前50个域名进行整体指标查看。
请求情况记载了时间段内的慢请求、正常请求、以及错误请求占比。慢请求数为总耗时超过了网络设置中设置的阈值的请求数量,正常请求数=总请求数-慢请求数。错误请求占比=错误请求数量/总请求数量。错误请求的详细情况可以在网络分析功能中的第二个三级菜单「网络错误」中查看。

3. 域名层级
点击域名列表中的任何一个域名,都会进入域名的层级。在域名的层级下,可以查看此域名中的URL数据情况。支持通过模糊搜索进行域名的查询,选定域名时需点击。
页面中的大数字卡片中,HTTP包含吞吐量、总耗时和传输数据量三个指标。数据统计指标默认展示全部域名的指标情况,可以通过卡片右上角的筛选条件选择左侧列表中的前5个/前10个/前50个URL进行整体指标查看。

在域名的层级中,支持查看此域名的URL列表,此处展示此域名下的全部URL。支持通过模糊匹配搜索以及导出URL列表。在列表中,可以查看单一URL的最近一次发生时间、总请求次数、慢请求次数、慢请求次数占比、错误请求次数、错误请求占比。

4. URL层级
点击某一个域名的URL后,可以进入单一URL的层级。选定某一个域名下的URL时需要点击。

在URL的层级下,支持查看慢请求列表,列表中展示请求此URL请求耗时超过慢请求阈值的设备情况。字段包含:UMID(友盟id,友盟+识别设备的唯一id,可以在网络错误或者其他错误分析模块的错误明细中查询到此id)、请求发生时间等。数值类型的指标支持排序。

慢请求分布中支持查看慢请求在设备、系统、运营商、版本、渠道和地域中的分布情况。
