You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by 972684638 <da...@qq.com> on 2020/04/30 08:15:05 UTC

回复:Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id

我想知道,你是否使用了pushgateway?



---原始邮件---
发件人: "俞剑波"<yjb19951129@gmail.com&gt;
发送时间: 2020年4月30日(星期四) 下午4:01
收件人: "user-zh"<user-zh@flink.apache.org&gt;;
主题: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id


flink集群是per
job模式,所以当有多个并行度,任务就会有多个taskmanager在多个机器上面。采用flink-metrics-prometheus的方式会遇到一个问题,就是收集taskmanager的jvm信息时,promethues返回的记录里面没有flink对应的job_name或者job_id,导致不能将数据汇总起来,请问各位有遇到这个问题吗?是怎么解决的?非常感谢!

Re: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id

Posted by 俞剑波 <yj...@gmail.com>.
再说一下我的详细情况,集群的是*per job*模式,指标是都采集到了,然后说明一下我的配置和遇到的情况:
1.在flink-conf.yaml是这么配置的
metrics.reporter.promgateway.class:
org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter
metrics.reporter.promgateway.host: 10.20.0.200
metrics.reporter.promgateway.port: 9091
metrics.reporter.promgateway.jobName: FlinkMonitor
metrics.reporter.promgateway.randomJobNameSuffix: true
metrics.reporter.promgateway.deleteOnShutdown: false

2.在promethues端都能够获取的到参数的值,但是获取不到flink对应的job_Name或者job_id的信息:
拿*flink_jobmanager_Status_JVM_Memory_Direct_MemoryUsed* 这个参数举例获取到的值:
{exported_job="FlinkMonitor00c46b7355bca443825de2b01ce2d3a2",host="hadoop224",instance="
10.20.0.200:9091",job="push_metrics"}
再拿另外一个参数*flink_jobmanager_job_numberOfCompletedCheckpoints*
举例:它就有jobname,和job_id
{exported_job="FlinkMonitor0ac46e79cf5d6fc2990db1574c2b0bf2",host="hadoop212",instance="
10.20.0.200:9091",job="push_metrics",*job_id*
="30f4075c798d6f3bd73c2bfe7bc54cf4",*job_name*="tj_history_log_itcourse"}

经过发现得出一个结论,凡是“*flink_jobmanager_Status_*”开头或者“*flink_jobmanager_Status_*
”发过来的都没有job_name和job_id

3.看过一个帖子也是per-job模式,它采用的influxdb,是去改源码:
https://blog.csdn.net/u013516966/article/details/103171484

4.希望有遇到这样问题并解决的大佬小伙伴能够帮个忙,说一下怎么解决。

俞剑波 <yj...@gmail.com> 于2020年4月30日周四 下午7:13写道:

> 我添加了这个参数配置发现这个只是解决了标签冲突,还是没有这个job_name:
>
> 不加参数:flink_jobmanager_Status_JVM_Memory_Heap_Used{exported_job="myJobYJB4eea972f622437b738875b3e8e811a56",host="localhost",instance="pushgateway",job="pushgateway"}
> 加了参数:
> flink_jobmanager_Status_JVM_Memory_Heap_Used{host="localhost",job="myJobYJB4eea972f622437b738875b3e8e811a56"}
>
> 972684638 <da...@qq.com> 于2020年4月30日周四 下午5:37写道:
>
>> 你看看是不是因为没有没配honor_labels: true
>>
>>
>>
>> ---原始邮件---
>> 发件人: "俞剑波"<yjb19951129@gmail.com&gt;
>> 发送时间: 2020年4月30日(星期四) 下午4:32
>> 收件人: "user-zh"<user-zh@flink.apache.org&gt;;
>> 主题: Re: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id
>>
>>
>> 是的,我使用了!请问大佬有解决办法吗,真的卡很多天了,希望能够解决一下,非常感谢
>>
>> 972684638 <daijiguo@qq.com&gt; 于2020年4月30日周四 下午4:18写道:
>>
>> &gt; 我想知道,你是否使用了pushgateway?
>> &gt;
>> &gt;
>> &gt;
>> &gt; ---原始邮件---
>> &gt; 发件人: "俞剑波"<yjb19951129@gmail.com&amp;gt;
>> &gt; 发送时间: 2020年4月30日(星期四) 下午4:01
>> &gt; 收件人: "user-zh"<user-zh@flink.apache.org&amp;gt;;
>> &gt; 主题: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id
>> &gt;
>> &gt;
>> &gt; flink集群是per
>> &gt;
>> &gt;
>> job模式,所以当有多个并行度,任务就会有多个taskmanager在多个机器上面。采用flink-metrics-prometheus的方式会遇到一个问题,就是收集taskmanager的jvm信息时,promethues返回的记录里面没有flink对应的job_name或者job_id,导致不能将数据汇总起来,请问各位有遇到这个问题吗?是怎么解决的?非常感谢!
>
>

Re: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id

Posted by 俞剑波 <yj...@gmail.com>.
我添加了这个参数配置发现这个只是解决了标签冲突,还是没有这个job_name:
不加参数:flink_jobmanager_Status_JVM_Memory_Heap_Used{exported_job="myJobYJB4eea972f622437b738875b3e8e811a56",host="localhost",instance="pushgateway",job="pushgateway"}
加了参数:
flink_jobmanager_Status_JVM_Memory_Heap_Used{host="localhost",job="myJobYJB4eea972f622437b738875b3e8e811a56"}

972684638 <da...@qq.com> 于2020年4月30日周四 下午5:37写道:

> 你看看是不是因为没有没配honor_labels: true
>
>
>
> ---原始邮件---
> 发件人: "俞剑波"<yjb19951129@gmail.com&gt;
> 发送时间: 2020年4月30日(星期四) 下午4:32
> 收件人: "user-zh"<user-zh@flink.apache.org&gt;;
> 主题: Re: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id
>
>
> 是的,我使用了!请问大佬有解决办法吗,真的卡很多天了,希望能够解决一下,非常感谢
>
> 972684638 <daijiguo@qq.com&gt; 于2020年4月30日周四 下午4:18写道:
>
> &gt; 我想知道,你是否使用了pushgateway?
> &gt;
> &gt;
> &gt;
> &gt; ---原始邮件---
> &gt; 发件人: "俞剑波"<yjb19951129@gmail.com&amp;gt;
> &gt; 发送时间: 2020年4月30日(星期四) 下午4:01
> &gt; 收件人: "user-zh"<user-zh@flink.apache.org&amp;gt;;
> &gt; 主题: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id
> &gt;
> &gt;
> &gt; flink集群是per
> &gt;
> &gt;
> job模式,所以当有多个并行度,任务就会有多个taskmanager在多个机器上面。采用flink-metrics-prometheus的方式会遇到一个问题,就是收集taskmanager的jvm信息时,promethues返回的记录里面没有flink对应的job_name或者job_id,导致不能将数据汇总起来,请问各位有遇到这个问题吗?是怎么解决的?非常感谢!

回复:Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id

Posted by 972684638 <da...@qq.com>.
你看看是不是因为没有没配honor_labels: true



---原始邮件---
发件人: "俞剑波"<yjb19951129@gmail.com&gt;
发送时间: 2020年4月30日(星期四) 下午4:32
收件人: "user-zh"<user-zh@flink.apache.org&gt;;
主题: Re: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id


是的,我使用了!请问大佬有解决办法吗,真的卡很多天了,希望能够解决一下,非常感谢

972684638 <daijiguo@qq.com&gt; 于2020年4月30日周四 下午4:18写道:

&gt; 我想知道,你是否使用了pushgateway?
&gt;
&gt;
&gt;
&gt; ---原始邮件---
&gt; 发件人: "俞剑波"<yjb19951129@gmail.com&amp;gt;
&gt; 发送时间: 2020年4月30日(星期四) 下午4:01
&gt; 收件人: "user-zh"<user-zh@flink.apache.org&amp;gt;;
&gt; 主题: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id
&gt;
&gt;
&gt; flink集群是per
&gt;
&gt; job模式,所以当有多个并行度,任务就会有多个taskmanager在多个机器上面。采用flink-metrics-prometheus的方式会遇到一个问题,就是收集taskmanager的jvm信息时,promethues返回的记录里面没有flink对应的job_name或者job_id,导致不能将数据汇总起来,请问各位有遇到这个问题吗?是怎么解决的?非常感谢!

Re: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id

Posted by 俞剑波 <yj...@gmail.com>.
是的,我使用了!请问大佬有解决办法吗,真的卡很多天了,希望能够解决一下,非常感谢

972684638 <da...@qq.com> 于2020年4月30日周四 下午4:18写道:

> 我想知道,你是否使用了pushgateway?
>
>
>
> ---原始邮件---
> 发件人: "俞剑波"<yjb19951129@gmail.com&gt;
> 发送时间: 2020年4月30日(星期四) 下午4:01
> 收件人: "user-zh"<user-zh@flink.apache.org&gt;;
> 主题: Flink监控: promethues获取到有的metrics没有包含flink 对应的job_name或者job_id
>
>
> flink集群是per
>
> job模式,所以当有多个并行度,任务就会有多个taskmanager在多个机器上面。采用flink-metrics-prometheus的方式会遇到一个问题,就是收集taskmanager的jvm信息时,promethues返回的记录里面没有flink对应的job_name或者job_id,导致不能将数据汇总起来,请问各位有遇到这个问题吗?是怎么解决的?非常感谢!