Sou novo no Logstash e estou tentando entender como entradas, filtros e saídas funcionam juntos. Entendo que há uma variedade de entradas, filtros e saídas, mas o que não entendo é como o Logstash funciona com mensagens internamente.
Digamos que eu configure uma entrada syslog e gostaria que os eventos syslog fossem enviados para o índice de log como GELF. Há uma entrada syslog que posso usar e uma saída GELF que posso usar. No entanto, é minha responsabilidade (usando filtros) preencher o campo GELF correto com base nos valores do evento syslog?
Devo olhar para os eventos (dos filtros de entrada) como uma entidade com campos nomeados (uma espécie de matriz chave:valor) e, em seguida, usar filtros para garantir que as saídas possam obter os dados corretos?
Como disse Jordan Sissel, pense nisso como um tubo com esteróides, entre a entrada e a saída, você pode fazer o que quiser com os eventos, pode corresponder partes da mensagem aos nomes dos campos usando grok ou pode usar mutate para remover campos , regex substituição de texto de estilo , adicionar ou remover tags. Depois de formatar seus dados como deseja, você pode enviá-los para sua saída.