将kibana上的字段号转换为日期,elasticsearch

oalqel3c  于 2021-06-15  发布在  ElasticSearch
关注(0)|答案(1)|浏览(626)

我有一个通过kibana的elasticsearch的字段号。
这是一个示例字段:

"insert.datePeticio:1,546,185,770,733"

我需要将此字段转换为日期,以便可视化。
如何将其解析为日期模式?

9rnv2umw

9rnv2umw1#

据我所知,elasticsearch上有一个整数字段,它以毫秒为单位存储自epoch以来的日期/时间。您希望将其转换为适当的日期类型,以便在kibana上正确地可视化。在这种情况下,我建议两种解决方案:
1) 如果您能够定义Map,请使用以下 insert.datePeticio 字段:

"mappings": {
  "_doc": {
    "properties": {
      "insert.datePeticio": {
        "format": "epoch_millis",
        "type": "date"
      }
    }
  }
}

这允许kibana定义和表示 insert.datePeticio 字段作为日期,即使实际值在elasticsearch上以毫秒为单位存储为整数。
2) 如果不是,则无法对原始Map进行任何更改,请在kibana上创建脚本字段,如下所示:
进入管理>索引模式
选择要修改的索引模式
选择索引模式的脚本字段选项卡
单击添加脚本字段
请参照下图填写表格并保存。

如果转到“kibana”>“discover”,可以看到两个字段以不同的表示形式和类型显示在一起: insert.datePeticio: 1,546,185,770,733 以及 insert.datePeticio_UTC:December 30th 2018, 16:02:50.733 . 由于是日期类型,脚本字段 insert.datePeticio_UTC 可轻松用于创建基于日期聚合的可视化效果。
注意:脚本字段根据elasticsearch索引中的数据动态计算数据。请记住,使用脚本化字段动态计算数据可能会占用大量资源,并直接影响kibana的性能。

相关问题