在 Logstash 中,如何获取客户端的 public IP 地址作为字段

In Logstash, how to get public IP address of a client as field

我正在使用文件 beat 将日志从我的节点发送到 logstash。 有多个这样的节点正在使用文件节拍将日志发送到 logstash。

基本上我想知道我的节点的 public IP 地址,这样我就可以在 KIBANA 中使用基于 geoip 的位置绘制可视化。

并且由于我的节点位于 NAT 之后,我无法将 IP 地址打印为我的日志条目(例如,syslog 条目)的一部分;因为在本地我只知道节点的私有 IP。

有什么方法可以让 logstash 自动知道我的节点的 IP 地址并将其作为弹性搜索字段插入?

理论上应该是可能的,因为当 logstash 从 beats 获取信息时,他应该知道从哪里获取信息的 IP 地址。

提前致谢。

当前的 Logstash Beats 输入无法将其配置为使用从中接收事件的远程 IP 丰富传入事件。

此功能是 proposed in the past for the older Logstash Lumberjack input, but there isn't an open 在 Beats 输入中对此提出的功能请求。我建议你申请。