Logstash遍历日志的s3目录树

时间:2014-10-15 21:56:12

标签: logging amazon-s3 elasticsearch logstash

我们在 Amazon S3 上存储了大约四年的日志,其格式为

BUCKET/path/logs/blah/YEARMONTHDAYHOUR/server1.log
BUCKET/path/logs/blah/YEARMONTHDAYHOUR/server2.log
BUCKET/path/logs/blah/YEARMONTHDAYHOUR/server3.log

我们的目标是使用这个数据来回填和使用Logstash索引日志,所以我想知道是否有一种方法告诉s3输入插件搜索指定前缀内的文件夹中的所有日志,类似于:

"path" => "/path/logs/blah/**/*.log

如果用s3 plugin无法做到这一点,你们有没有解决过类似的问题?
理想的是能够对进程进行后台处理并保持尽可能接近实时(意思是我想避免我必须手动将日志复制到外部位置并运行脚本来更新索引)

1 个答案:

答案 0 :(得分:1)

我有类似的问题。 我找到的解决方案如下。

  1. 将S3存储桶作为可移动驱动器安装在本地文件系统中。
  2. 使用file输入插件索引目标日志文件。
  3. 使用此方法既不需要手动复制也不需要脚本运行。索引是在后台执行的。

    有几个S3客户端应用程序可帮助将S3存储桶安装为本地驱动器(例如TntDrive)。但是它们都是商业软件。到目前为止,我没有找到任何免费申请。

    我的操作系统是Windows 7,我使用TntDrive将S3存储桶安装到我的本地文件系统。