prometheus/graphite_exporter

Report Flink-metric on yarn-session mode error with the same name and label values

IcerBean opened this issue · 5 comments

start flink on yarn-session
exec yarn-session.sh -nm flow-session -D metrics.reporter.grph.prefix="flink.flow-session" -D env.java.opts="-Djob_name=flow-session" -d

And next run 3 flink streaming job in the session then get errors

`* collected metric "flink_jobmanager_numberOfInProgressCheckpoints" { label:<name:"host" value:"10-10-29-124" > label:<name:"job_name" value:"flow-session" > gauge:<
value:0 > } was collected before with the same name and label values

  • collected metric "flink_jobmanager_downtime" { label:<name:"host" value:"10-10-29-124" > label:<name:"job_name" value:"flow-session" > gauge:<value:0 > } was colle
    cted before with the same name and label values
  • collected metric "flink_jobmanager_fullRestarts" { label:<name:"host" value:"10-10-29-124" > label:<name:"job_name" value:"flow-session" > gauge:<value:0 > } was c
    ollected before with the same name and label values`

shoud I start a Issues to Flink or here

result is graphite_exporter crash 7~7

Here is right. Could you run the exporter with --log.level=debug and see what the incoming metric names are? It seems that with the default mapping, there is a collision somehow, this should not happen

With "crash" do you mean a panic? Can you post the stack trace for that?

nohup /data/apps/lib/graphite_exporter/graphite_exporter --web.listen-address :9108 --graphite.listen-address :9109 --graphite.mapping-config /data/apps/lib/graphite_exporter/mapping.yml --log.level=debug >> ./exporter.log 2>&1 &

Can all log include conflict log go into exporter.log?

Ah, you did not mention before that you are using a custom mapping. It is possible that the error you see comes from mapping multiple Graphite metric names to one Prometheus name.

The debug log will contain a record of every (Graphite) metric received. Working backwards from the metrics reported in the error, consult your mapping for every possible Graphite metric that results in this metric name. I cannot do this for you without seeing your mappings and what the exporter is receiving.