Java 数据写入IDE中的侧面输出,但不在集群上

Java 数据写入IDE中的侧面输出,但不在集群上,java,apache-flink,Java,Apache Flink,我有一项工作,使用Flink的侧输出功能将数据写入不同的kafka接收器。侧输出在IDE中运行时获取写入它的数据,但在Flink集群上运行时不获取写入它的数据。知道为什么吗 以下是代码示例: final OutputTag<SideOutputObject> sideOutputTag = new OutputTag<SideOutputObject>("side-output-tag"){}; SingleOutputStreamOperator<String&

我有一项工作,使用Flink的侧输出功能将数据写入不同的kafka接收器。侧输出在IDE中运行时获取写入它的数据,但在Flink集群上运行时不获取写入它的数据。知道为什么吗

以下是代码示例:

final OutputTag<SideOutputObject> sideOutputTag = new OutputTag<SideOutputObject>("side-output-tag"){};

SingleOutputStreamOperator<String> processedDataStream = outputStream
                .process(new ProcessAndSortBinaryData(sideOutputTag))
                .startNewChain()
                .name("processedDataStream")
                .uid("processedDataStream");

DataStream<String> sideOutputObjectStream = processedDataStream.getSideOutput(sideOutputTag)
                .flatMap(new FlatMapFunction<SideOutputObject, String>() {
                    @Override
                    public void flatMap(SideOutputObject sideOutputObject, Collector<String> collector) throws Exception {
                        System.out.println("sideOutputObject in side output flat map!");
                        collector.collect(sideOutputObject.toString());
                    }
                })
                .startNewChain()
                .name("sideOutputStream")
                .uid("sideOutputStream");


sideOutputObjectStream.addSink(new FlinkKafkaProducer010<>(
                    "sideOutputKafkaTopic",
                    new SimpleStringSchema(),
                    kafkaSinkProperties)
            ).name("sideOutput-KafkaSink")
                    .uid("sideOutput-KafkaSink");
final OutputTag sideOutputTag=新的OutputTag(“side output tag”){};
SingleOutputStreamOperator processedDataStream=outputStream
.process(新的ProcessAndSortBinaryData(sideOutputTag))
.startNewChain()
.name(“processedDataStream”)
.uid(“处理数据流”);
DataStream sideOutputObjectStream=processedDataStream.getSideOutput(sideOutputTag)
.flatMap(新的flatMap函数(){
@凌驾
公共void flatMap(SideOutputObject SideOutputObject,收集器收集器)引发异常{
System.out.println(“侧面输出平面图中的侧面输出对象!”);
collector.collect(sideOutputObject.toString());
}
})
.startNewChain()
.name(“sideOutputStream”)
.uid(“侧输出流”);
sideOutputObjectStream.addSink(新FlinkKafkaProducer010(
“sideOutputKafkaTopic”,
新的SimpleStringSchema(),
卡夫卡辛酒店
).name(“sideOutput KafkaSink”)
.uid(“sideOutput KafkaSink”);
flatmap从未显示它在集群GUI中收到记录,System.out.println消息也从未写入stdout


任何帮助都将不胜感激。提前谢谢

我刚刚尝试将process函数ProcessAndSortBinaryData()逻辑移动到一个匿名内部函数(在重新阅读文档之后…),它现在正在集群中工作。

我面临同样的问题。我已经在使用匿名内部函数:p