flink配置自定义jar reporter到yaml,并通过jmx控制台连接主机

hgc7kmma  于 2021-06-21  发布在  Flink
关注(0)|答案(1)|浏览(415)

我是一个学习者,需要帮助。
我有一个JavaMaven项目,它实现了FlinkMetricsReporter接口,作为发送度量的自定义报告器。
在我当地的flink,我能够:
在本地flink-conf.yaml文件中添加flink jmx reporter config。
在端口8789启动flink
使用jconsole(jmx控制台)连接到远程localhost:8789
重新启动flink,请参阅jconsolebeans下的flink metrics。
在证明了工作流的工作原理之后,我想做的是:
我编写了一个实现metrics接口的定制reporter,并将reporter构建到一个jar中,包含所有必要的依赖项。
我把jar移到Flink下面 lib/ 文件夹,如报告者文档的重要段落所示
我的jar叫 x-y-reporter-1.0-SNAPSHOT.jar pom

<groupId>a.b.c</groupId>
  <artifactId>x-y-reporter</artifactId>
  <version>1.0-SNAPSHOT</version>

我将下面的配置更新为flink-conf.yaml

metrics.reporters: x-y-reporter
metrics.reporter.x-y-reporter.class: com.b.c.xyreporter.XYReporter
metrics.reporter.x-y-reporter.class.host: localhost
metrics.reporter.x-y-reporter.port: 8789

问题:
我想在flink-conf.yaml中将jmx配置替换为我自己的reporter配置。上述配置不起作用。我该怎么做?请问每个参数是什么意思?
我想看看jmx控制台的指标,比如jmx reporter。也是通过端口号配置的吗?
非常感谢你。

hgtggwj0

hgtggwj01#

重新启动具有问题中的配置的flink后,检查了flink日志。结果发现我的自定义类中有一个错误。修复错误后,通过连接到jconsole中的本地apache flink进程,我可以看到mbean列表下的类。我不需要连接到远程或本地主机。

相关问题