У меня есть следующий очень простой Apache Flink Pipeline, для которого я хотел бы получить некоторые метрики, как описано в документации Apache Flink , через Apache Flink Dashboard:
import org.apache.flink.api.common.functions.RichMapFunction;
import org.apache.flink.configuration.Configuration;
import org.apache.flink.metrics.Counter;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.streaming.api.functions.source.RichSourceFunction;
public class Pipeline {
public static void main(String[] args) throws Exception {
final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
env.addSource(new RichSourceFunction<String>() {
private static final long serialVersionUID = 3990963645875188158L;
private boolean notCanceled = true;
@Override
public void run(SourceContext<String> ctx) throws Exception {
while (notCanceled) {
ctx.collect("test");
}
}
@Override
public void cancel() {
notCanceled = false;
}
}).map(new RichMapFunction<String, String>() {
private static final long serialVersionUID = 1L;
private transient Counter counter;
@Override
public void open(Configuration parameters) throws Exception {
super.open(parameters);
this.counter = getRuntimeContext()
.getMetricGroup()
.counter("myCounter");
}
@Override
public String map(String value) throws Exception {
this.counter.inc();
return "mappedtext";
}
}).print();
env.execute();
}
}
Я запускаю этот конвейер, используя Docker Setup, доступный через Docker -Hub . Все использует Apache Flink 1.10.0. Трубопровод работает нормально, но когда я пытаюсь просмотреть свои метри c, я получаю только:
Теперь я спрашиваю себя, что я делаю не так? Есть какой-то параметр конфигурации, который мне не хватает, или это неправильное место для просмотра этого показателя c на панели инструментов? Может кто-нибудь посоветовать или хотя бы указать мне ресурс, где я мог бы получить больше информации?