带有ElasticSearch的NodeJS - 不断获取[query_parsing_exception] [range]查询不支持[day]

时间:2017-08-10 08:03:15

标签: node.js elasticsearch

我正在尝试在nodeJS和我的ElasticSearch中运行一个简单的查询:

client.search({
    index: "usage_*",
    size : 100,
    from: 0,
    body: {
        query: {
            filtered:{
                filter:{
                    bool:{
                        must: [{"range":{"created":{"gte":{"day":"09","month":"08","year":"2017"},"lt":"now"}}}]
                    }
                }
            }
        }
    }
}

我不断得到一个例外:

  

[query_parsing_exception] [range]查询不支持[day],{   指数=" usage_2017-04-01" &安培; line = 1& col = 83}(和)   [query_parsing_exception] [range]查询不支持[day],{   指数=" usage_2017-04-02" &安培; line = 1& col = 83}(和)   [query_parsing_exception] [range]查询不支持[day],{   指数=" usage_2017-04-03" &安培; line = 1& col = 83}(和)

有人能指出我的问题吗?我明白我可以按照上面的描述编写日期(显然我可以用其他语法编写它,但我使用我创建的通用查询生成器生成此搜索调用)

1 个答案:

答案 0 :(得分:1)

您的范围查询格式不正确,您需要以yyyy-MM-dd格式

编写日期
client.search({
    index: "usage_*",
    size : 100,
    from: 0,
    body: {
        query: {
            filtered:{
                filter:{
                    bool:{
                        must: [{"range":{"created":{"gte":"2017-08-09","lt":"now"}}}]
                    }
                }
            }
        }
    }
}