【发布时间】:2019-03-11 19:42:01
【问题描述】:
我应该复制一个二进制 TCP 流。
所以我设置了一个 NiFi 1.9.0 服务器,放入一个 ListenTCP 处理器和一个 PutTCP 处理器,配置正确的 IP 和端口并连接它们。
到目前为止一切顺利,数据包已被 ListenTCP 处理器接收并由 PutTCP 处理器转发。
但 NiFi 似乎以某种方式弄乱了数据,发送的数据包与接收的数据包不完全相同。我预计 NiFi 会以 1:1 的比例转发所有内容,但发生了一些事情,我不知道是什么。
我一直在使用 ListenTCP 处理器上的字符集、最大批处理大小和批处理消息删除器设置,以及 PutTCP 处理器上的传出消息删除器和字符集。
我还弄乱了一个 MergeContent 处理器,但没有让它正常工作。
在这里您可以看到接收(红色)和发送数据(使用 tcpflow 捕获)之间的区别。
另一个问题是我真的不知道我正在处理的数据,它在文档中说:
这些日志文件采用名为 ebm.xml 的 XML 文件描述的机器可读二进制格式。
和
流式事件采用基于 TCP 的二进制格式。
我确实可以访问 ebm.xml 文件,但不确定如何使用它。
有人知道如何让 NiFi 简单地转发所有内容吗? 我是 NiFi 新手,所以我可能错过了一些可能性......
【问题讨论】:
标签: tcp stream apache-nifi