Flink statsD指标

时间:2018-05-28 04:06:42

标签: apache-flink statsd

我无法看到从flink发送到statsd的统计信息。已经在JM和TMs / lib文件夹中放置了flink-metrics-statsd-1.4.1.jar。 使用下面的代码,我希望看到“myCounter”作为一个潮流数据库系列。但是涌入数据库中没有任何内容,因此格拉法纳没有任何表现。有什么建议?谢谢!

public class StatsdCounter extends RichMapFunction<String, String> {
private transient Counter counter;

@Override
public void open(Configuration config) {
    this.counter = getRuntimeContext()
    .getMetricGroup()
    .counter("myCounter");
}

@Override
public String map(String value) throws Exception {
    this.counter.inc();
    return value;
}

在flink-conf.yaml中,

metrics.scope.jm: <host>.jobmanager
metrics.scope.jm.job: <host>.jobmanager.<job_name>
metrics.scope.tm: <host>.taskmanager.<tm_id>
metrics.scope.tm.job: <host>.taskmanager.<tm_id>.<job_name>
metrics.scope.task: <host>.taskmanager.<tm_id>.<job_name>.<task_name>.<subtask_index>
metrics.scope.operator: <host>.taskmanager.<tm_id>.<job_name>.<operator_name>.<subtask_index>

metrics.reporters: stsd
metrics.reporter.stsd.class: org.apache.flink.metrics.statsd.StatsDReporter
metrics.reporter.stsd.host: 192.168.56.10
metrics.reporter.stsd.port: 8127
metrics.reporter.stsd.interval: 1 SECONDS

但如果我们在代码中手动设置statsd,它将会起作用,

public void open(Configuration configuration) throws Exception {
    super.open(configuration);
    counter = new AtomicInteger(); 
    stats = new NonBlockingStatsDClient(xxx);
}

@Override
public String map(String value) throws Exception { 
  stats.increment(statsdAspect); 
  return value;
}

0 个答案:

没有答案