0

我正在使用 Kibana 根据每个微服务的最新值显示多个微服务的状态。我想用 2 分钟前或 2 分钟 21 秒前的格式替换 2019 年 4 月 8 日 14:37:13.173 格式。我知道我可以过滤过去 15 分钟的 Kibana 数据条目,但这并不能显示每个服务更新的时间。

我已经尝试进入索引模式并更改日期模式,但它不包含函数,而只包含格式。我可以添加另一个每分钟发送一次的字段,但这只会浪费资源并使一切复杂化。

4

1 回答 1

0

一旦我知道脚本字段存在,我就能够解决这个问题,所以这就是我用来显示更新多久之前的内容:

if(Math.round((new Date().getTime()-doc['@timestamp'].value)/1000)>7200){
    return Math.round((new Date().getTime()-doc['@timestamp'].value)/3600000) + " hours ago";
}else if(Math.round((new Date().getTime()-doc['@timestamp'].value)/1000)>3600){
    return Math.round((new Date().getTime()-doc['@timestamp'].value)/3600000) + " hour ago";
}else if(Math.round((new Date().getTime()-doc['@timestamp'].value)/1000)>120){
    return Math.round((new Date().getTime()-doc['@timestamp'].value)/60000) + " minutes ago";
} else if(Math.round((new Date().getTime()-doc['@timestamp'].value)/1000)>60){
    return Math.round((new Date().getTime()-doc['@timestamp'].value)/60000) + " minute ago";
}else {
    return Math.round((new Date().getTime()-doc['@timestamp'].value)/1000)  + " seconds ago";
}
于 2019-04-16T21:55:01.343 回答