为什么Flink SocketTextStreamWordCount不起作用?

wil*_*red 2 apache-flink flink-streaming

我已经设置了示例项目并构建了它.我能按预期运行WordCount程序.但是当我运行SocketTextWordCount时,我没有打印出任何结果.

  • 我通过nc发送数据(localhost:9999两侧)
  • 在正在运行的作业的Web控制台中,我可以看到正在发送/接收消息

但我从未看到在任何地方打印出的counts.print()输出,即使在杀死nc会话之后也是如此.

编辑 - 当我改变它以将结果打印到文本文件时,没问题.所以问题似乎是count.print()没有正确写入我正在运行示例的控制台的stdout.

Fab*_*ske 5

DataStreams打印到TaskManager进程的标准输出.启动Flink实例(本地或集群)时,TaskManager的标准输出将被定向到Flink根目录.out./log/目录中的文件中.所以你应该检查输出是否写入这些文件.

此行为不同于DataSet.print(),结果在JobManager上收集,发送到客户端,并由客户端打印.