elasticsearch 合并两个索引模式的字段

ldioqlga  于 2022-11-02  发布在  ElasticSearch
关注(0)|答案(1)|浏览(205)

我在Kibana中有两个具有相似信息的数据流。我正试图通过创建一个新的索引模式来聚合它们。每个数据流都有一个字段“state”。对于其中一个,状态可以是[passed,failed],而对于另一个,状态可以是[Succeeded,Failed]。我想将passed与Succeeded聚合在一起,将failed与Failed聚合在一起。这是我的新索引模式:

当我试图简单地可视化合并索引模式的状态时,我得到了下面的图表,这是预期的:

为了合并状态,我为合并的索引模式定义了一个查找,如下所示:

我期望合并这些状态。但是我在视觉化中得到这个:

因此,我的问题是,如何合并来自两个流的数据?

xqk2d5yq

xqk2d5yq1#

使用查找不是正确的方法,因为它只会影响Kibana中的显示值。实际的聚合发生在Elasticsearch中。这意味着它发生在数据到达Kibana并Map到新值之前。
您需要做的是:

**选项A:**在具有大写字母值的两个索引的摄取管道中使用,并使用小写处理器摄取具有相同格式的数据。
**选项B:**使用合并索引中的运行时字段将状态字段的所有值小写为新字段。然后使用新字段进行可视化。

A和B之间的区别在于,在每个搜索请求上都会评估一个运行时字段,这会影响性能。这样做的好处是,您可以立即将其用于所有现有和将来的数据。使用接收管道,您只会影响新传入的数据。在更改为新格式后,您可能还希望更新旧数据。
在这里你可以找到更多关于runtime fields的详细信息(这是我自己的页面)

相关问题