Todos os produtos
Search
Central de documentação

Elasticsearch:Arquivos de configuração do Logstash

Última atualização: Jun 27, 2026

Um arquivo de configuração de pipeline do Logstash define o fluxo de dados no pipeline. Cada arquivo se divide em três seções — input, filter e output — correspondentes aos três tipos de plug-in que controlam a origem dos dados, a transformação e o destino final.

Para consultar o formato de configuração do Logstash open source, acesse Structure of a Config File.

Estrutura do arquivo de configuração

Cada seção contém uma ou mais definições de plug-in:

# Use comments to describe parts of your configuration.
input {
  ...
}

filter {
  ...
}

output {
  ...
}

As seções input e output são obrigatórias. A seção filter é opcional — inclua-a apenas para transformar ou pré-processar dados antes da saída.

Ordem de execução dos plug-ins: Se você definir vários plug-ins de filtro, o Logstash os aplicará na ordem em que aparecem no arquivo de configuração.

Importante

Se a configuração incluir um parâmetro como last_run_metadata_path, defina-o com um caminho no Alibaba Cloud Logstash. O backend fornece um caminho no formato /ssd/1/<Logstash cluster ID>/logstash/data/ para testes. O sistema não exclui dados nesse caminho; portanto, verifique se o disco tem espaço suficiente. Após especificar o caminho, o Logstash gera automaticamente um arquivo no local, mas não é possível visualizar seu conteúdo.

Importante

Ao configurar um pipeline com driver JDBC, adicione allowLoadLocalInfile=false&autoDeserialize=false ao parâmetro jdbc_connection_string por motivos de segurança. Sem esses parâmetros, o sistema retorna um erro de falha na verificação ao adicionar o arquivo de configuração.

jdbc_connection_string => "jdbc:mysql://xxx.drds.aliyuncs.com:3306/<Database name>?allowLoadLocalInfile=false&autoDeserialize=false"
Nota

Para usar esse arquivo de configuração em um pipeline, referencie-o na página de gerenciamento de pipelines do console. Para obter mais informações, consulte Use configuration files to manage pipelines.

Configuração de plug-ins

Cada definição de plug-in consiste no nome do plug-in seguido por suas propriedades. O exemplo abaixo define dois plug-ins beats na seção input, cada um escutando em uma porta e host diferentes:

input {
  beats {
    port => 8000
    host => "118.11.xx.xx"
  }

  beats {
    port => 8001
    host => "192.168.xx.xx"
  }
}

As propriedades disponíveis variam conforme o tipo de plug-in. Consulte a documentação do Elastic para visualizar a lista completa:

Tipos de valor

As propriedades dos plug-ins aceitam os seguintes tipos de valor.

Array

Não recomendado. Prefira o tipo String ou use :list => true para ativar a verificação de tipo em listas. Arrays são úteis apenas para manipular tabelas hash ou listas de tipos mistos sem validação de tipo.

users => [ {id => 1, name => bob}, {id => 2, name => jane} ]

List

List não é um tipo independente, mas um atributo de propriedade. Declare um parâmetro com :list => true para permitir múltiplos valores com verificação de tipo. Se algum valor da lista for inválido (por exemplo, uma URL incorreta), o processamento do evento falhará.

path => [ "/var/log/messages", "/var/log/*.log" ]
uris => [ "http://elastic.co", "http://example.net" ]

Boolean

Valores booleanos devem ser true ou false, sem aspas.

ssl_enable => true

Byte

Um valor Byte é uma string que representa uma quantidade de bytes. Há suporte tanto para unidades decimais (k M G T P E Z Y, base 1000) quanto binárias (Ki Mi Gi Ti Pi Ei Zi Yi, base 1024). O valor não diferencia maiúsculas de minúsculas e permite um espaço entre o número e a unidade. Se você omitir a unidade, o inteiro será tratado como bytes.

my_bytes => "1113"   # 1113 bytes
my_bytes => "10MiB"  # 10485760 bytes
my_bytes => "100kib" # 102400 bytes
my_bytes => "180 mb" # 180000000 bytes

Codec

Codec é um plug-in que codifica ou decodifica dados. Os codecs funcionam tanto em plug-ins de entrada quanto de saída:

  • Um codec de entrada decodifica os dados antes de entrarem no pipeline.

  • Um codec de saída codifica os dados antes de saírem do pipeline.

O uso de um codec elimina a necessidade de um plug-in de filtro separado. Para visualizar os codecs disponíveis, consulte Codec plug-ins.

codec => "json"

Hash

Um valor Hash é uma coleção de pares chave-valor no formato "field1" => "value1".

match => {
  "field1" => "value1"
  "field2" => "value2"
  ...
}
# Or as a single line. No commas between entries:
match => { "field1" => "value1" "field2" => "value2" }

Numeric

Valores numéricos devem ser números de ponto flutuante ou inteiros.

port => 33

Password

Password é uma string de valor único que nunca é registrada em log ou exibida.

my_password => "password"

URI

Uma URI pode variar de uma URL completa a um identificador simples, como foobar. Se a URI contiver uma senha — por exemplo, http://user:paas@example.net — essa senha nunca será registrada em log ou exibida.

my_uri => "http://foo:bar@example.net"

Path

Um valor Path é uma string que representa um caminho de arquivo válido no sistema operacional.

my_path => "/tmp/logstash"

String

Um valor String é uma sequência única de caracteres delimitada por aspas duplas (") ou aspas simples (').

Sequências de escape

Por padrão, as sequências de escape ficam desativadas. Para ativá-las, adicione o seguinte trecho ao logstash.yml:

config.support_escapes: true

Com as sequências de escape ativadas, strings entre aspas (simples ou duplas) passam a aceitar os seguintes caracteres de escape:

Caractere de escape

Descrição

Valor ASCII (decimal)

\r

Retorno de carro

013

\n

Quebra de linha

010

\t

Tabulação

009

\\

Barra invertida

092

\"

Aspas duplas

034

\'

Aspas simples

039

Exemplo:

name => 'It\'s a beautiful day'

Comentários

Um comentário começa com # e pode aparecer em qualquer posição da linha, não apenas no início.

# This is a full-line comment.

input { # This is an inline comment.
  # ...
}