elasticsearch 如何获得kibana 4.x中字段的总值,elasticsearch,kibana,kibana-4,elasticsearch,Kibana,Kibana 4" /> elasticsearch 如何获得kibana 4.x中字段的总值,elasticsearch,kibana,kibana-4,elasticsearch,Kibana,Kibana 4" />

elasticsearch 如何获得kibana 4.x中字段的总值

elasticsearch 如何获得kibana 4.x中字段的总值,elasticsearch,kibana,kibana-4,elasticsearch,Kibana,Kibana 4,我需要使用脚本字段获取Kibana中字段的总值 e、 g)如果id字段具有类似于1、2、3、4、5的值 我希望将id的所有值相加,我希望输出为15 在得到每个字段的总数后,我需要实现以下公式 lifetime=a-b-c-(d-e-f)*g 这里a、b、c、d、e、f、g都是每个字段值的总和 欲了解更多信息,请参阅我提出的内容。您可以在脚本字段中执行类似操作: doc['id'].value 因此,您可以使用sum聚合来获取Kibana中的总值 这可能很方便 编辑 如果您试图使用Elasti

我需要使用脚本字段获取Kibana中字段的总值

e、 g)如果id字段具有类似于1、2、3、4、5的值

我希望将id的所有值相加,我希望输出为15

在得到每个字段的总数后,我需要实现以下公式

lifetime=a-b-c-(d-e-f)*g
这里a、b、c、d、e、f、g都是每个字段值的总和


欲了解更多信息,请参阅我提出的内容。

您可以在
脚本字段中执行类似操作:

doc['id'].value
因此,您可以使用
sum
聚合来获取
Kibana
中的总值

这可能很方便

编辑

如果您试图使用
Elasticsearch
执行此操作,您可以在请求正文中执行以下操作:

"aggs":{  
         "total":{  
             "sum":{  
                 "script":"doc['id'].value"
             }
          }
      }

你可以继续这样做,但是如果你使用的是无痛的
lang
,一定要把它包含在
lang

您当然可以使用总和聚合来获得id的总和,但为了进一步使公式相等,您可以查看一下如何使用总和值进行进一步计算

看一看,有了正确的桶路径和聚合器,您就可以实现您的解决方案

样本文件

{
  "a":100,
  "b":200,
  "c":400,
  "d":600
}
质疑

 {
   "size": 0,
   "aggs": {
      "result": {
         "terms": {"script":"'nice to have it here'"},
         "aggs": {
            "suma": {
                "sum": {
                    "field": "a"
                }
            },
            "sumb": {
                "sum": {
                  "field": "b"
                }
            },
            "sumc": {
                "sum": {
                  "field": "c"
                }
            },
            "equation": {
                "bucket_script": {
                    "buckets_path": {
                        "suma": "suma",
                        "sumb": "sumb",
                        "sumc" : "sumc"
                    },
                    "script": "suma + sumb + 2*sumc"
                }
            }
        }
      }
   }
}

现在,您可以在每个总和聚合器上添加术语过滤器,以过滤每个总和聚合器的总和。

谢谢!你能再解释一下吗<代码>文档['id']。值
在kibana中,它返回每行的记录,而不是id字段的总和。我应该在哪里应用sum aggregation elasticsearch或kibana?也许这真的很傻,但我不知道:-)请回顾我更新的问题。你可以从
ES
方面来做,或者如果它使用
Kibana
,你可以在图表中使用
sum
聚合。我想你还没有完全理解我的问题!kibana图中的单字段和聚合对我来说不是问题。你能看看我的配方吗?e、 g)如果我在kibana图中有七个总和聚合字段,那么现在如何将上述公式应用于这七个字段?哦!这真的很难理解。如果你不介意的话,你能用简单的例子来解释我的公式吗?不可能将elasticsearch聚合转换成kibana图形视图吗?当然,好的,我现在明白你想要达到什么,所以a,b,c,d。。。是为不同文档集计算的id的总和,然后您希望将它们合并到公式中。给我一些时间,我会尝试给你一个较小的实现也应该感谢这个家伙,最后一个评论的问题的把戏-