2016-12-02 99 views
1

我试图想象两个日期字段之间的时间差(以小时为单位)。Elasticsearch和Kibana中两个字段之间的可视化时间差

中的字段声明如下:

"fieldname": { 
    "type": "date" 
    }, 

我找到的解决方案是:

, 
    "script_fields" : { 
    "timedifference" : { 
     "script" : "doc['loading_startTime'].value - doc['startTime'].value" 
    } 
    } 

结果我得到如下:

enter image description here

我我喜欢这个数字是在几秒钟,几分钟或几小时,我在做什么克错了?

回答

2

这个怎么样?

"script_fields" : { 
    "timedifference" : { 
    "script" : "def msDiff = (doc['loading_startTime'].value - doc['startTime'].value); return [msDiff/1000.0, msDiff/60000.0, msDiff/3600000.0]" 
    } 
} 

这将有你需要的一切分歧返回一个数组,即

"fields": { 
    "timedifference": [ 
     2700,    <-- difference in seconds 
     45,     <-- difference in minutes 
     0.75,    <-- difference in hours 
    ] 
} 
+0

嗨再次,我应该把你在快速拨号你这么该死的快!但是,这隐藏了我的数据,我也想看看其他数据。 (另外,我怎样才能得到kibana的分钟差异) –

+0

你可以直接返回数组中的'msDiff',你也会得到毫秒的差异。 – Val

+0

对不起,我不够清楚。这只会返回“fields”对象,但我也想要_source对象。 任何提示在基巴纳得到这个? –

相关问题