我们有多个 Logstash 从队列中提取数据,然后将记录插入到 Elasticsearch。
是否有任何好的方法可以通过编程方式测试管道,以便我们可以将其作为“单元测试”当我们向管道存储库创建拉取请求时?
目前,我们仅通过改变管道要写入的位置(Elasticsearch,更改为stdout
)进行本地测试,然后我们评估记录以检查更改是否按预期工作。
答案1
那里没有太多东西。
使用新的(自 LS6.x 起)统计 API 可以实现的一种方法是跟踪给定输入集的过滤阶段命中次数。如果您有一个具有特定名称的 grok-stage,它应该触及 N 个文档才能通过,并且使用由该早期 Grok 状态标记的字段的下阶段输出也应该处理 N 行。诸如此类。