向Fluentd发送TCP数据包

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了向Fluentd发送TCP数据包相关的知识,希望对你有一定的参考价值。

在我的Mac OS中,随着 fluentd 我想读取tcp事件并将其写入本地目录。

下面是 td-agent.conf 以打开TCP端口并写入本地。

  <!-- td-agent.conf-->
  <source>
    @type tcp
    @log_level "trace"
    tag "tcp.events"
    port 2201
    bind "0.0.0.0"
    delimiter "\n"
    <parse>
      @type "regexp"
      expression "/^(?<field1>\d+):(?<field2>\w+)$/"
    </parse>
  </source>
  <match tcp.events>
    @type file
    path "/Users/logs/outputlog"
    <buffer time>
      path "/Users/logs/outputlog"
    </buffer>
  </match>

为了测试,我将tcp包发送到该端口(2201)的工具,如 telnetnetcat. 但终端连接到端口后就不返回了。它停留在那里没有任何响应。

检查了telnet netcat的verbose。没有结果。

我希望 TCP 连接并获取数据登录 fluentd 日志。但是连接建立了,但是数据没有写入日志,或者tcp连接的控制没有返回到终端。

答案

在你的conf文件中添加以下内容。

<source>
  @type forward
  port 24224
  bind 0.0.0.0
</source>

https:/docs.fluentd.orginputforward)。

以上是关于向Fluentd发送TCP数据包的主要内容,如果未能解决你的问题,请参考以下文章

TCP3次握手和4次挥手及其为什么

tcp的粘包和拆包示例以及使用LengthFieldFrameDecoder来解决的方法

vb.net如何使用TCP/IP协议向服务器发送字符串,要用到啥控件和函数?

TCP/IP的一些需要理解的点

TCP是在每个数据包上发送SYN / ACK还是仅在第一个连接上发送?

TCP协议中,A和B相互通信具体流程