我在Logstash中配置了一个tcp服务器,以便多个服务器可以将日志数据推送到Logstash。但是,我想将消息所来自的服务器的IP地址添加为消息中的属性。在Logstash中获取tcp输入的客户端IP
在Logstash中使用TCP服务器时,是否有可以找到客户端IP的变量或插件?
我在Logstash中配置了一个tcp服务器,以便多个服务器可以将日志数据推送到Logstash。但是,我想将消息所来自的服务器的IP地址添加为消息中的属性。在Logstash中获取tcp输入的客户端IP
在Logstash中使用TCP服务器时,是否有可以找到客户端IP的变量或插件?
我认为你可以使用ruby
过滤器将主机名解析为IP
ruby {
code => "
require 'resolv'
event['ip'] = Resolv.getaddress event['SYSLOGHOST']
"
}
凡event['SYSLOGHOST']
解析从日志文件grok
过滤器。新字段ip
与ruby
过滤器一起使用。
主机名称不是FQDN。由于rsyslog与logstash不在同一台服务器上,因此无法将主机名解析为IP地址,因为主机名未必在logstash服务器上已知。 –
然后发送日志与FQDN:http://serverfault.com/a/448413/204896 – 7171u
谢谢我还没有找到该选项。在Logstash中使用这个ruby代码而不是DNS插件有没有什么特别的理由? –
什么是推动数据? –
@AlainCollins,rsyslog正在推送数据。 –
为什么不使用syslog输入? https://www.elastic.co/guide/en/logstash/current/plugins-inputs-syslog.html – 7171u