我们正在使用 Flink 1.9.1
在 EMR 5.29
启用多主机模式。我们将下面的配置添加到conf文件夹中的flink-conf.yaml文件中,并添加了jar flink-metrics-statsd-1.9.1.jar
到flink/lib文件夹。
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.factory.class: org.apache.flink.metrics.statsd.StatsDReporter
metrics.reporter.stsd.host: localhost
metrics.reporter.stsd.port: 8130
metrics.reporter.stsd.interval: 60 SECONDS
当我们监听statsd端口时,我们没有得到任何指标。有什么我们遗漏的吗?有没有办法检查某个参数是否未通过?
正如在另一个答案中所建议的,我们也尝试给出主机的ip地址。似乎不起作用。
2条答案
按热度按时间e4yzc0pl1#
发现问题:本应使用:
metrics.reporter.stsd.class: org.apache.flink.metrics.statsd.StatsDReporter
而不是:metrics.reporter.stsd.factory.class: org.apache.flink.metrics.statsd.StatsDReporter
cyej8jka2#
使用flink1.9,需要将报告器的jar文件复制到集群中每台机器的lib目录中。所以,复制
flink-metrics-statsd-1.9.1.jar
从opt
进入lib
.如果这还不能解决问题,那就检查日志——那里应该有线索。
另外,statsd通常使用端口8125。你确定是8130吗?