Temos vários Logstash(s) extraindo dados de uma fila e depois inserindo registros no Elasticsearch.
Existe alguma boa maneira de testar pipelines programaticamente para que possamos incluí-los como"testes unitários"quando estamos criando solicitações pull para o repositório do pipeline?
No momento, testamos apenas localmente, alterando onde o pipeline irá gravar (Elasticsearch, alterado para stdout
) e depois avaliamos o registro para verificar se as alterações funcionam conforme o esperado.
Responder1
Não há muita coisa por aí.
Uma abordagem que se tornou possível com a nova API de estatísticas (a partir do LS6.x) é rastrear o número de acessos ao estágio de filtro para um determinado conjunto de entradas. Se você tiver um grok-stage com um nome específico, ele deverá tocar em N documentos para que ele passe, e a saída do downstage que usa campos marcados por esse estado anterior do Grok também deve lidar com N linhas. Coisas assim.
Responder2
Há três anos, encontrei a solução para minha pergunta. Eraeste projeto fantástico. Isso me serviu bem por muito tempo.
Agora, três anos depois, tive o mesmo problema. Mas eu tinha esquecidoa soluçãoe acabei nessa mesma pergunta, ao perceber que era eu mesmo do passado.
Para prevenir no próximotrês a quatro anoster o mesmo problema pela terceira vez, estou insistindo muito na resposta para o meu problema, que éeste projeto.
Sinto muito por ter falhado com você, eu do passado.