日期格式和弹性搜索1.7

时间:2015-11-24 12:50:04

标签: elasticsearch elasticsearch-plugin

我正在尝试将unixtimestamp存储为Elasticsearch Index中字段的值。我使用的版本是1.7.3。 索引该字段的数据映射时: -

             {"type":"date","format":"dateOptionalTime"}

数据存储正确但是当我尝试查询特定字段的日期值时,我得到解析异常。 使用的查询是: -

             {"query":{"term":{"contentPublishedTime":1447764265}}}

提示错误: -

             IllegalArgumentException[Invalid format: "1447764265" is malformed at "5"]

2 个答案:

答案 0 :(得分:1)

这是因为您的日期格式。请在此处找到可用的内容:https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-date-format.html

dateOptionalTime具有以下格式:yyyy-MM-ddTHH:mm:ss.SSSZZ。这看起来不像你传递的那样。

所以你需要做的是,要么以这种格式传递日期,要么有另一个字段,它会以格式存储你的数据,而你正在运行你的查询。它可能是epoch_millisepoch_second

答案 1 :(得分:1)

查看1.7文档。看起来似乎还没有支持epoch_ *:

https://www.elastic.co/guide/en/elasticsearch/reference/1.7/mapping-date-format.html