我看了下,inputQueueLength和outputQueueLength是有值的。xxxPoolUsage都是0(包括exclusive,floating)。numBuffersInLocal这种也有值。还有的指标本身有值,带个PerSecond没值,这都不合理呀,比如指标A的值在几千,但指标AperSecond却是0。
明显存在很多指标固定为0,但是现在混淆在一起,不清楚是指标统计了,值为0,还是就没统计。


赵一旦 <[email protected]> 于2020年10月30日周五 下午5:52写道:

>
> 如我上一个email写的内容。inPool这种指标我懂,但是目前按照我的观察,这些指标默认都是0。不像是真实是0,而是貌似这些指标不生效就。flink是不是有什么开关,默认没做这个统计啊。
>
> 范瑞 <[email protected]> 于2020年10月30日周五 下午5:49写道:
>
>> Hi
>> 可以查看所有 C 算子的 InPoolUsage 这个 Metric 来定位哪个 C有问题了。inPoolUsage高才会导致上游的 B反压
>> 祝好🤞
>> fanrui
>>
>>
>>
>> ---原始邮件---
>> 发件人: "赵一旦"<[email protected]&gt;
>> 发送时间: 2020年10月30日(周五) 下午5:43
>> 收件人: "user-zh"<[email protected]&gt;;
>> 主题: Flink反压定位算子
>>
>>
>> 如题,当前Flink任务反压情况下,基于Flink WebUI可以定位到反压算子C1的前一个算子B1。
>>
>> 但是B1的后续如果有很多个算子,比如C1、C2、C3、......、Cn。如何在C1-Cn之间定位问题算子呢?总不能不断拆分任务,去除部分算子排除法吧。
>>
>>
>> 当前希望是通过metrics指标来看。但是,和buffer相关的指标,目前发现有很多指标恒定为0,感觉貌似是没统计,而不是实际值是0。
>> 比如 0.buffers.inPoolUsage这类指标一直都是0。
>>
>> 请问这种case怎么解,怎么进一步定位?以及什么metric有效呢?
>
>

回复