I would like to access the Flink Web interface when starting it locally from the IDE.
I need this because I'd like to access the counters (accumulators) of Flink.
In order to start the web interface when starting Flink locally, we have to enable the web interface in the FlinkMiniCluster
. The FlinkMiniCluster
is the class managing the startup of all Flink services locally.
Include the dependency:
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-runtime-web_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
The following snippet will enable the web interface for a StreamExecutionEnvironment
:
// set up the execution environment
Configuration conf = new Configuration();
conf.setBoolean(ConfigConstants.LOCAL_START_WEBSERVER, true);
final StreamExecutionEnvironment env = StreamExecutionEnvironment.createLocalEnvironment(8, conf);
You can also use RestOptions to configure the server:
conf.setInteger(RestOptions.PORT, 8082);
In addition to the code in the above answer, the following dependency is also required in the pom file.
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-runtime-web_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With