我是一个学习者,需要帮助。
我有一个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。也是通过端口号配置的吗?
非常感谢你。
1条答案
按热度按时间hgtggwj01#
重新启动具有问题中的配置的flink后,检查了flink日志。结果发现我的自定义类中有一个错误。修复错误后,通过连接到jconsole中的本地apache flink进程,我可以看到mbean列表下的类。我不需要连接到远程或本地主机。