我正在尝试使用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的新手,专家请原谅:)