Android Firebase跟踪显示错误的中位时间延迟?
我正在我的应用程序中添加Firebase性能跟踪,下图是最近Android Firebase跟踪显示错误的中位时间延迟?,android,firebase,trace,firebase-analytics,firebase-performance,Android,Firebase,Trace,Firebase Analytics,Firebase Performance,我正在我的应用程序中添加Firebase性能跟踪,下图是最近24小时的数据 如您所见,中值为647ms,其中As95%的时间延迟为14.81s,而5%的时间延迟为460ms 中位数怎么可能是647ms,应该在14秒左右?我是不是遗漏了什么 编辑- 在下面的图像中,数据是最近7天的 正如你在过去的24小时中所看到的,我有数据显示95分位数为14.81s,但在过去7天的图表中,怎么可能没有提到14秒跟踪?所有记录道均低于5.95s 同样,在分布图像中,延迟介于460ms到2.94s之间,但第一个
24小时的数据
如您所见,中值
为647ms
,其中As95%
的时间延迟为14.81s
,而5%
的时间延迟为460ms
中位数怎么可能是647ms
,应该在14秒左右?我是不是遗漏了什么
编辑-
在下面的图像中,数据是最近7天的
正如你在过去的24小时
中所看到的,我有数据显示95分位数为14.81s
,但在过去7天的图表中,怎么可能没有提到14秒
跟踪?所有记录道均低于5.95s
同样,在分布图像中,延迟介于460ms
到2.94s
之间,但第一个图像中的第95个百分位是14.81s
,第二个图像中的延迟是5.95s
,但分布仅显示460ms-2.94s
之间的数据?那么这个分布数据显示了什么?他们不应该在这里显示过去7天内所有的请求时间延迟吗
当我检查设备样本时也是如此
所有情况下的最大时间延迟为5.60s
而不是14.81s
?95%并不意味着95%的时间,它是数值范围内的第95个百分位,不能与频率混淆
大多数(90%)的“处决”将在5-95%之间,因此中位数为647毫秒是有意义的
我不知道95%的值代表什么,它可能是前5%执行时间的平均值,也可能是该范围内的第一个值。我认为您面临的行为是:
您正在发送此指标(已排序):
第1天:
,460ms,…,647ms,…,14.81s。。。
第5次第50次第95次
这解释了第一个图表,在接下来的几天中,您将发送不同的度量总数。(我设置了一些随机数):
第2天:
,460ms,…,647ms,…,2.95s。。。
第5次第50次第95次
第3天:
,460ms,…,647ms,…,2.95s。。。
第5次第50次第95次
第4天:
,619ms,…,971ms,…,5.95s。。。
第5次第50次第95次
第5天:
,460ms,…,647ms,…,2.94s。。。
第5次第50次第95次
第6天:
,460ms,…,647ms,…,2.01s。。。
第5次第50次第95次
这可以解释第二张图,因为第三张图显示了7天内的分布(将所有度量合并到一个数组中并计算百分位数),这就解释了第95张图应该如何不同于大多数每天第95张图(除非每天发送的度量相同)
此外,我注意到,事实上,您可以从浏览器中检查Firebase控制台发出的网络请求响应的第100位(我认为UI决定不呈现此值)。谢谢您的帮助,您可以检查我编辑的帖子吗?如果我正确阅读图表,您的上一台设备看起来可能有14.81s。我没有任何关于Firebase痕迹的经验。这不是关于痕迹,我想知道在过去的24小时内我得到14.81s
时间,那么为什么在过去的7天内graph14.81s
不存在,对于样本设备,任何设备的最长时间都是5.60s
不是14.81s
,7天内的数据比24小时内的数据多,因此第95个百分位很可能是5.60秒。这并不意味着14.81s的执行时间不存在,它只是更接近该范围内的最大值。在设备数据中也没有提及14.81s
,只需告诉我一件事假设我需要寻找这样的延迟,现在首先我需要看到(0-100%)的时间延迟,然后只有我可以采取行动,但好像它只会显示第95百分位,那么我怎么能通过单击“最后7天”选项卡知道最大时间延迟是14.81s
,因为它显示的时间仅大于5.60s
,但延迟是多少呢?在某些情况下,它可能像50s
那样需要立即注意,或者在某些情况下,sit可能像6s
那样不需要立即注意?