Amazon web services 配置logstash以从AmazonS3存储桶读取日志

Amazon web services 配置logstash以从AmazonS3存储桶读取日志,amazon-web-services,amazon-s3,logstash,logstash-configuration,logstash-file,Amazon Web Services,Amazon S3,Logstash,Logstash Configuration,Logstash File,我一直在尝试将logstash配置为读取AmazonS3存储桶中生成的日志,但没有成功。详情如下: 我已经在ec2实例上安装了logstash 我的日志都是s3 bucket中的gz文件 conf文件如下所示: 输入{ s3{ 访问密钥id=>“我的访问密钥id” bucket=>“我的桶” 地区=>“我的地区” 秘密访问密钥=>“我的秘密访问密钥” 前缀=>“/” 类型=>“s3” add_field=>{source=>gzfiles} } } 滤器{ 如果[类型]=“s3”{ csv{ 列

我一直在尝试将logstash配置为读取AmazonS3存储桶中生成的日志,但没有成功。详情如下:

  • 我已经在ec2实例上安装了logstash
  • 我的日志都是s3 bucket中的gz文件
  • conf文件如下所示:
  • 输入{ s3{ 访问密钥id=>“我的访问密钥id” bucket=>“我的桶” 地区=>“我的地区” 秘密访问密钥=>“我的秘密访问密钥” 前缀=>“/” 类型=>“s3” add_field=>{source=>gzfiles} } } 滤器{ 如果[类型]=“s3”{ csv{ 列=>[“日期”、“时间”、“x-edge-location”、“sc字节”、“c-ip”、“cs方法”、“主机”、“cs uri干”、“sc状态”、“引用者”、“用户代理”、“cs uri查询”、“Cookie”、“x-edge-result-type”、“x-edge-request-id”] } } 如果([消息]=~/^#/){ 删除{} } } 输出{ 弹性搜索{ 主机=>“ELASTICSEARCH\u URL”协议=>“http” } }
    日志文件中有错误吗?没有。在csv中添加了分隔符=>“\t”以使其正常工作。 input { s3 { access_key_id => "MY_ACCESS_KEY_ID" bucket => "MY_BUCKET" region => "MY_REGION" secret_access_key => "MY_SECRET_ACESS_KEY" prefix => "/" type => "s3" add_field => { source => gzfiles } } } filter { if [type] == "s3" { csv { columns => [ "date", "time", "x-edge-location", "sc-bytes", "c-ip", "cs-method", "Host", "cs-uri-stem", "sc-status", "Referer", "User-Agent", "cs-uri-query", "Cookie", "x-edge-result-type", "x-edge-request-id" ] } } if([message] =~ /^#/) { drop{} } } output { elasticsearch { host => "ELASTICSEARCH_URL" protocol => "http" } }