Como adicionar logs de acesso do AWS ao logstash com entrada S3?

3

Estou usando uma pilha ELK para monitoramento do servidor. Os registros de acesso do meu aplicativo, que são do AWS ELB, são armazenados no AWS S3. Eu estou tentando adicioná-los ao logstash com a seguinte entrada:

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"
  }
}

Mas nada é adicionado ao logstash, o que estou fazendo errado? Existe outra maneira de adicioná-los ao logstash? O filtro e as partes de saída parecem OK, então eu não os publico.

Nota: Estou usando a versão 2.1 do logstash

    
por apanagiotou 19.01.2016 / 16:14

2 respostas

-1

Parece que o prefixo deveria ser, já que o plugin não suporta globs (*):

 prefix => "AWSLogs/828557649675/elasticloadbalancing/eu-west-1/"

Exemplo completo:

input {
  s3 {
    access_key_id => "my_id"
    secret_access_key => "my_key"
    bucket => "my_bucket"
    region => "region"
    prefix => "AWSLogs/828557649675/elasticloadbalancing/eu-west-1/"
  }
}
    
por 11.04.2016 / 10:30
0

Você poderia adicionar sincedb_path => "/tmp/alb-sincedb" e deixar o prefixo como prefix => "AWSLogs/" ?

Além disso, seria ótimo se você instalasse a última versão da entrada s3 gem. Acredito que vi as alterações relacionadas à iteração de objetos dentro do intervalo usando o prefixo usando a API de recursos da V2. Minha versão atual é logstash-input-s3-3.1.2.gem .

    
por 02.02.2017 / 09:27