我正在使用ELK堆栈进行服务器监视。 我的应用程序的来自AWS ELB的访问日志存储在AWS S3中。 我想用下面的input将它们添加到logstash中:
input { s3 { access_key_id => "my_id" secret_access_key => "my_key" bucket => "my_bucket" region => "region" prefix => "AWSLogs/828557649675/elasticloadbalancing/eu-west-1/**/**/**/*.log" type => "elb" } }
但没有什么是logstash添加,我做错了什么? 我有另一种方式将它们添加到logstash? filter和输出部分似乎没问题,所以我不张贴它们。
注意:我正在使用logstash 2.1版本
似乎前缀应该是,因为插件不支持globs(*):
prefix => "AWSLogs/828557649675/elasticloadbalancing/eu-west-1/"
完整的例子:
input { s3 { access_key_id => "my_id" secret_access_key => "my_key" bucket => "my_bucket" region => "region" prefix => "AWSLogs/828557649675/elasticloadbalancing/eu-west-1/" } }
你可以添加sincedb_path => "/tmp/alb-sincedb"并保留prefix => "AWSLogs/"吗?
如果你安装最新版本的inputs3 gem,那也是很好的。 我相信通过使用V2资源API,我看到了使用前缀在桶内对象迭代的相关变化。 我目前的版本是logstash-input-s3-3.1.2.gem 。