是否可以从HTTP URL获取数据到Logstash?

是否可以从HTTP URL获取数据到Logstash?,logstash,Logstash,正如标题所说,我需要将数据(CSV或JSON)直接输入logstash。我想要的是设置一个过滤器,比如说CSV,它直接将内容从一些文件读入Logstash,而不涉及任何中间人脚本。如果我理解正确,您正在尝试重复调用http资源并将数据读入Logstash。因此,您需要的是输入,而不是过滤器 为此,登录一个新插件。使用bin/plugin install logstash-input-http_poller安装后可以设置如下配置来调用资源: input { http_poller {

正如标题所说,我需要将数据(CSV或JSON)直接输入logstash。我想要的是设置一个过滤器,比如说CSV,它直接将内容从一些文件读入Logstash,而不涉及任何
中间人
脚本。

如果我理解正确,您正在尝试重复调用http资源并将数据读入Logstash。因此,您需要的是输入,而不是过滤器

为此,登录一个新插件。使用
bin/plugin install logstash-input-http_poller安装后
可以设置如下配置来调用资源:

input {
  http_poller {
    urls => {
      myresource => "http://example.com/csv.php"
      }
    }
    request_timeout => 60
    interval => 60
    codec => "json" # set this if the response is json formatted
  }
}
如果响应包含CSV,则需要设置一个


还有一些插件在filter部分中执行http请求。但是,这些应该是为了丰富现有的活动,而这似乎不是您想要的。

这正是我想要的。@hurb如果我不想使用interval,这会起作用吗?比如一次拉取数据,然后关机。请help@myjscoffee不,一次拉动不起作用,这是一个持续将数据拉入logstash的输入
interval
已弃用,新关键字是
schedule
-必需的配置参数。您还可以使用
http过滤器
为每个传入事件触发http请求。如果要一次性处理http资源,只需将资源卷曲并将结果存储在文件中。然后使用logstash文件输入来处理该文件。
filter {
    csv{ }
}