【发布时间】:2016-06-10 06:24:47
【问题描述】:
我有两个字段,一个是与每条记录相关联的时间戳,一个是 expiryDate,所以我想在发现部分搜索部分中放置一个 lucene 查询,以便提取出过期日期 > 时间戳的记录。 任何人都可以帮助我编写查询。 将 online.timestamp 视为一个字段,将 online.expiry 视为另一个字段。
【问题讨论】:
标签: elasticsearch lucene kibana kibana-4 kibana-3
我有两个字段,一个是与每条记录相关联的时间戳,一个是 expiryDate,所以我想在发现部分搜索部分中放置一个 lucene 查询,以便提取出过期日期 > 时间戳的记录。 任何人都可以帮助我编写查询。 将 online.timestamp 视为一个字段,将 online.expiry 视为另一个字段。
【问题讨论】:
标签: elasticsearch lucene kibana kibana-4 kibana-3
您可以编写以下查询:-
{"constant_score":{"filter":{"script" : { "script" : "doc['online.expiry'].value > doc['online.timestamp'].value"}}}}
您在使用上述查询时可能会看到错误,例如:-
ScriptException[类型 [inline]、操作 [search] 和 lang [groovy] 的脚本被禁用]
要解决此错误,请编辑您的 elasticsearch.yml 文件并在末尾输入以下属性:-
script.inline:on
然后您可以重新启动您的 Elasticsearch 节点或集群,然后在 Kibana 上查询相同的内容,这将获取您想要的记录。
【讨论】:
Failed to parse expression