elasticsearch 如何根据Kibana4中的字符串前缀聚合术语?,elasticsearch,logstash,kibana-4,elasticsearch,Logstash,Kibana 4" /> elasticsearch 如何根据Kibana4中的字符串前缀聚合术语?,elasticsearch,logstash,kibana-4,elasticsearch,Logstash,Kibana 4" />

elasticsearch 如何根据Kibana4中的字符串前缀聚合术语?

elasticsearch 如何根据Kibana4中的字符串前缀聚合术语?,elasticsearch,logstash,kibana-4,elasticsearch,Logstash,Kibana 4,流入Kibana实例的一个字段包含Python应用程序的记录器名称。这些名称表示应用程序结构,用点分隔。例如,我们可以有以下记录器: a a.b a.b.c a.d b.c 我想在Kibana4中设置一个两级饼图,使用顶级记录器(a和b)作为内部切片,第二级记录器(a.b,a.d,b.c)作为外部“甜甜圈” “展开”饼图并显示预期结果如下所示: ==============++++ <-- representing the main aggregation (inner slices

流入Kibana实例的一个字段包含Python应用程序的记录器名称。这些名称表示应用程序结构,用点分隔。例如,我们可以有以下记录器:

a
a.b
a.b.c
a.d
b.c
我想在Kibana4中设置一个两级饼图,使用顶级记录器(
a
b
)作为内部切片,第二级记录器(
a.b
a.d
b.c
)作为外部“甜甜圈”

“展开”饼图并显示预期结果如下所示:

==============++++   <-- representing the main aggregation (inner slices)
----oooooooooo****   <-- representing the sub-aggregation (outer donut)

With:

    =: a
    +: b
    -: a.b
    o: a.d
    *: b.c

=============+++只要有固定数量的级别,就可以简单地定义3种模式,如

FirstLevel:%{DATA:FirstLevel}。 FirstAndSecondLevel:%{GREEDYDATA:FirstAndSecondLevel}。 完整路径:%{GREEDYDATA:FullPath}

然后,您可以使用grok过滤器将这三种模式应用于您的消息。您可以使用其中一个模式分别执行3个单独的grok过滤器,也可以将所有三个模式放在一个grok过滤器中,并将break_on_match设置为false


然后,您应该能够在kibana中对这些字段进行分组。

很抱歉,您的问题到底是什么?简而言之,我有一个类似于
foo.bar.baz.qux
的术语。我想将其索引为
foo
foo.bar
foo.bar.baz.qux