Vagrant 流浪汉日志:地址已在使用中
我有一个流浪的形象,其中有一个应用程序;如果您调用端口Vagrant 流浪汉日志:地址已在使用中,vagrant,logstash,bind,vagrantfile,elastic-stack,Vagrant,Logstash,Bind,Vagrantfile,Elastic Stack,我有一个流浪的形象,其中有一个应用程序;如果您调用端口2401,并根据您想要的服务调用特定地址(即“curl-X GET”),则可以在流浪者映像中访问该端口http://127.0.0.1:2401/provider/ipfix”)。为了检索Vagrant机器外部的输出,我在Vagrant文件中设置了一个端口转发(“config.vm.network:forwarded\u port,guest:2401,host:8080”),因此使用命令“curl-X GET”http://127.0.0.
2401
,并根据您想要的服务调用特定地址(即“curl-X GET”),则可以在流浪者映像中访问该端口http://127.0.0.1:2401/provider/ipfix
”)。为了检索Vagrant机器外部的输出,我在Vagrant文件中设置了一个端口转发(“config.vm.network:forwarded\u port,guest:2401,host:8080
”),因此使用命令“curl-X GET”http://127.0.0.1:8080/provider/ipfix
“我从主机获得相同的输出
我现在正在安装Logstash。我的问题是,当我使用配置文件运行Logstash时,我会得到错误“Address ready in use”。我还尝试使用字段来引导特定的输出。下面是我的日志存储配置文件。你会建议什么解决方法
input {
tcp {
host => localhost
port => 8080
add_field => {
"field1" => "provider"
"field2" => "ipfix"
}
codec => netflow {
versions => [10]
target => ipfix
}
type => ipfix
}
}
output {
stdout { codec => rubydebug }
elasticsearch {
index => "IPFIX-logstash-%{+YYYY.MM.dd}"
}
}
如果我读对了,您希望Logstash使用TCP连接到localhost:8080来获取它将处理的信息 这不是这个输入的作用。这将在127.0.0.1:8080上创建一个侦听器,因此关于“已在使用”的错误消息非常正确 考虑到您正在使用curl作为获取这些数据的示例,我建议更好地满足您的需要
input {
http_poller {
urls => {
IPFIX => "http://127.0.0.1:8080/provider/ipfix"
}
request_timeout => 30
schedule => { "every" => "5s" }
add_tags => [ 'ipfix' ]
}
}
这将每隔5秒通过
GET
请求命中已知的工作CURL URL。你说得对,这就是我想要的。你的建议似乎是一个合法的解决办法。我现在不能尝试,我会在我方便的时候尽快做,我会更新。非常感谢!