elasticsearch 转换用法-如何为所有特定术语推送事件,即使其中一个术语缺失,elasticsearch,logstash,elasticsearch,Logstash" /> elasticsearch 转换用法-如何为所有特定术语推送事件,即使其中一个术语缺失,elasticsearch,logstash,elasticsearch,Logstash" />

elasticsearch 转换用法-如何为所有特定术语推送事件,即使其中一个术语缺失

elasticsearch 转换用法-如何为所有特定术语推送事件,即使其中一个术语缺失,elasticsearch,logstash,elasticsearch,Logstash,我有一个设想。我创建了一个转换,将每天的所有事件从源索引分组为3种不同的状态-完成、终止和重试。例如,如果对于2021年4月25日,我们完成了-3,终止了-5,并重试了-1,那么目标索引对于2021年4月25日有3条记录,如下所示 {"keyword": "Completed","Count": 3, "Per day": "2021-04-25T00:00:00.000Z"} {"ke

我有一个设想。我创建了一个转换,将每天的所有事件从源索引分组为3种不同的状态-完成、终止和重试。例如,如果对于2021年4月25日,我们完成了-3,终止了-5,并重试了-1,那么目标索引对于2021年4月25日有3条记录,如下所示

{"keyword": "Completed","Count": 3, "Per day": "2021-04-25T00:00:00.000Z"}
{"keyword": "Terminated","Count": 5, "Per day": "2021-04-25T00:00:00.000Z"}
{"keyword": "Retry","Count": 1, "Per day": "2021-04-25T00:00:00.000Z"}
这一切都按预期进行。现在,若4月26日并没有重试事件,那个么transform在目标索引中有如下内容,这和预期的一样

{"keyword": "Completed","Count": 3, "Per day": "2021-04-26T00:00:00.000Z"}
{"keyword": "Terminated","Count": 5, "Per day": "2021-04-26T00:00:00.000Z"}
但问题是,对于所有3种情况,我需要将数据从目标索引推送到另一个输出(在我的例子中是Kafka),包括一个缺少重试的情况。因此,实际上,我希望推送到如下所示的Kafka 3事件(包括一个用于重试且计数为0的事件),而不是2

{"keyword": "Completed","Count": 3, "Per day": "2021-04-26T00:00:00.000Z"}
{"keyword": "Terminated","Count": 5, "Per day": "2021-04-26T00:00:00.000Z"}
{"keyword": "Retry","Count": 0, "Per day": "2021-04-26T00:00:00.000Z"}
不确定如何实现这一点。这里的任何建议/输入都将非常有用。


谢谢

您想添加
缺少的\u bucket
设置。它要求您使用7.10版或更高版本,并在以下论坛中介绍:

正如在那篇文章中提到的,官方文档在

中介绍了这一点,我想即使是在7.10版或更高版本中,missing_bucket的用法仍然存在。对于我的需求,我采用了不同的方法。 我使用术语过滤器来检查特定的关键字,以便在没有事件落入存储桶的情况下可以得到0计数


我想即使是7.10版或更高版本,在使用missing_bucket时仍存在一些已知问题。对于我的需求,我采用了不同的方法。我使用术语过滤器来检查特定的关键字,以便在没有事件落入存储桶的情况下可以得到0计数