在Elasticsearch

时间:2018-06-15 14:41:13

标签: elasticsearch

我正在尝试使用ES中的无漆动态计算时差。虽然我在互联网上发现了几个类似问题的链接,但我无法找到一个新的脚本字段名称" timeDifference"。

以下是我的索引

PUT /cs/builds
{
  "startTime": "2018-06-14 11:52:44",
  "endTime": "2018-06-14 13:21:06"
}

我的地图

PUT /cs
{
  "mappings": {
  "builds": {
  "properties": {
    "endTime": {
      "type":   "date",
      "format": "yyyy-MM-dd HH:mm:ss"
    },
    "startTime": {
      "type":   "date",
      "format": "yyyy-MM-dd HH:mm:ss"
    }
  }
}
} 
}

以下是我尝试引用的在线链接 https://discuss.elastic.co/t/script-field-to-subtract-dates-compute-time-difference-not-working/116217

https://www.elastic.co/guide/en/elasticsearch/reference/6.3/modules-scripting-painless.html

但我可以跟着他们做到:(

我尝试的东西在下面,

GET /cs/builds/_search
{
   "query": {
    "match_all": {}
},
"script_fields": {
   "timedifference": {
    "script": "doc['endTime'].value - doc['startTime'].value"
  }
} 
}

我知道很多ES用户都面临着为事件的开始和结束时间计算时差的问题。希望有人能为这个问题提供很好的解决方案。

我是ES的新手,专家请原谅:)

0 个答案:

没有答案