Logstash - 读取JSON文件

时间:2017-04-12 20:15:50

标签: json logging logstash filebeat logstash-file

我正在尝试配置Logstash,它应该读取位于特定目录中的所有json文件。 JSON文件每次都通过python脚本更新,我需要每次都从头开始读取所有文件(不仅仅是检查最后一行)。

我测试了两种配置变体:

1 config:

input {
  file {
  path => "/tmp/*.json"
  start_position => "beginning"
  }
}

output{
  stdout{codec => rubydebug}
}

2 config:

input {
  file {
      path => "/tmp/*.json"
      start_position => "beginning"
      sincedb_path => "/dev/null"
      ignore_older => 0
  }
}

output{
  stdout{codec => rubydebug}
}

两种情况都有结果:

  1. 当python更新文件时,Logstash无法检测到更改(文件时间戳每次都在更改)

  2. 即使我更改了文件内部的某些内容,logstash仅在第一次检测到它并打印完整文件,但之后它不再能检测到更改。

  3. 最终结果: 最后,Logstash只需要在特定目录中获取所有文件(应自动检测新文件),读取内容并将其推送到某处。你能帮忙做点什么吗?

0 个答案:

没有答案