我不明白如何在Google平台监控UI中计算显示百分位数的图表。
下面是我如何创建标准图表:
示例日志事件

为请求持续时间创建基于日志的度量。
在这里,我已经配置了20个桶的直方图,从0开始,每个桶需要100 of。

创建一个图表来显示随时间变化的百分位数

我不明白这些直方图桶是如何与“聚合器”、“对齐器”和“对齐期”一起工作的。
UI强制使用“对齐器”和“对齐周期”。
问题
发布于 2021-03-23 09:05:58
几天来,我一直在研究同样的问题,并发现官方文档中的理解分布百分位数部分非常有用。
百分比值是一个计算值。计算考虑了桶的数量、桶的宽度和样本的总数。因为实际的测量值是未知的,所以百分位数计算不能依赖于这些数据。
它们有一个很好的例子,即存储桶( [0, 1) [1, 2) [2, 4) [4, 8) [8, 16) [16, 32) [32, 64) [64, 128) [128, 256) )和最后一个桶[128, 256)中的一个度量(在所有其他桶中都没有)。
答:如果我试图计算百分位数,为什么我要把我所有的响应时间总和到每一个“对齐期”?
我觉得Metrics的GCP控制台UI也有点误导/混淆了用词(但可能只是我不熟悉他们的术语)。我认为这里的关键概念是Reduction。
对齐器在每个对齐周期结束时产生一个单一值。还原器是一个函数,它被应用于一组时间序列中的值,以产生单个值。
两者之间的区别是水平聚集和垂直聚合。对于UI,Aggregator (主要和次要的)都是reducers。
回到问题上,在sum还原器之前应用的percentile对齐在其他用例中似乎比您的更有用。简而言之,mean或max对齐器对您的"duration_ms“度量可能更有用,但是它们在UI上的下拉列表中是不可用的,老实说,我也没有想出如何在MQL中实现它们。只是引用这里的文档。还有其他的对齐器可能也很有用,但我现在就把它们排除在外。
为基于日志的度量配置的直方图桶是否会影响这些总和?
和“安东尼”一样,我也不太清楚这个问题意味着什么。假设您在询问是否可以使用这些对齐器/还原器对齐/减少基于日志的度量,答案将是yes。但是,您需要知道所使用的度量类型(counter vs distribution),并根据需要以相应的方式对它们进行聚合。
发布于 2020-01-08 13:27:28
在我们看你的问题之前,我们必须了解直方图。
通过使用文章中提供的文档,文档中有一个部分解释了直方图桶。查看本节并反映您的设置,我们可以看到您正在使用线性类型来指定分布度量的直方图桶之间的边界。
此外,线性类型有三个计算值:
每个桶具有相同的宽度,边界使用以下公式计算:offset + width x I (其中i= 0,1,2,.,∞)。
例如,如果起始值为5,桶数为4,桶宽为15,则桶范围如下:[-INF,5),[5,20),[20,35),[35,50],[50,65),65,+INF
现在我们明白了公式,我们可以看看你的问题并回答它们:
如果我们查看这个关于选择度量的文档,我们可以看到有一个部分讨论了聚合是如何工作的。我建议研究这一部分,以了解聚合是如何在GCP中工作的。
计算百分位数的公式如下:
R = P / 100 (N + 1)其中,R表示分数的排序。P表示百分位数。N表示分布中的分数数。
在同一个部分中,它也解释了对齐周期是什么,但在大多数情况下,对齐周期决定了细分时间序列的时间长度。例如,您可以将时间序列分解为一分钟块或一小时块.对每个期间的数据进行汇总,使单个值表示该期间。默认的对齐时间是1分钟。
尽管可以为数据设置对齐间隔,但当更改图表上显示的时间间隔或更改缩放级别时,时间序列可能会重新对齐。
我希望这能帮到你!
https://stackoverflow.com/questions/59635115
复制相似问题