根据时间戳显示相对时间

时间:2019-04-08 19:09:37

标签: time visualization kibana relative

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

我尝试进入索引模式并更改日期模式,但是它不具有功能,而仅具有格式设置。我可以添加另一个每分钟发送一次的字段,但这只是浪费资源并使一切变得复杂。

1 个答案:

答案 0 :(得分: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";
}