范围查询不支持 Elasticsearch 字段

N·马尔凯托

我正在使用 curl 查询来尝试从我的 elasticsearch 实例中获取数据。我所有的索引和类型都有一个字段调用@timestamp,它使用“strict_date_optional_time”格式。但是每次我尝试在该字段上使用范围过滤器时,我的查询都会失败。

我执行的查询:

curl 'localhost:X/logstash-*/traces_console/_search' -d '{
"query" : {
    "bool": {
        "must": [
            { "match_all": {} }
        ],
        "filter": [
            { "range":
                { "@timestamp": 
                    "gte": "2018-02-20T13:55:06.387Z",
                    "lte": "2018-02-23T13:55:06.387Z"
                }
            }
        ]
    }}
}'

错误信息:

"reason":{
    "type":"query_parsing_exception",
    "reason":"[range] query does not support [@timestamp]",
    "index":"logstash-2018.02.06","line":10,"col":21
}

我不明白为什么这个错误不断出现。当我查看已经发布的大部分内容时,所有使用日期格式的人都有可用的查询。如果您有任何关于它为什么不起作用的提示或线索,我将不胜感激。

这里有一些有用的信息:

环境

  • 操作系统:红帽企业 Linux 服务器 6.5 版(圣地亚哥)
  • 爪哇: 1.7
  • 弹性搜索: 2.4
  • Logstash: 2.4

从 logstash 生成的映射

"traces_console":{
    "properties":{
        "@timestamp":{
            "type":"date",
            "format":"strict_date_optional_time||epoch_millis"
        },
        "@version":{"type":"string"},
        "Method":{"type":"string"},
        "RequestSize":{"type":"string"},
        "ResponseSize":{"type":"string"},
        "ResponseTime":{"type":"string"},
        "SubSystem":{"type":"string"},
        "column1":{"type":"string"},
        "column2":{"type":"string"},
        "column3":{"type":"string"},
        "column4":{"type":"string"},
        "column5":{"type":"string"},
        "host":{"type":"string"},
        "path":{"type":"string"},
        "type":{"type":"string"}
    }
}

Logstash 配置文件提供给elasticsearch

input {
  file {
    path => "LOG_PATH/TRACES_CONSOLE.log"
    start_position => "beginning"
    type => "traces_console"
  }
}

filter {
  csv {
    separator => ";"
    columns => ["Method","RequestSize","ResponseSize","ResponseTime","SubSystem"]
    source => message
    convert => {
      "RequestSize" => "date"
      "ResponseSize" => "date"
    }
    remove_field => ["message"]
  }
}

output {
  elasticsearch {
    hosts => ["localhost:X"]
  }
}
安东尼奥·瓦尔

您的范围查询语法不正确,您需要额外的大括号:

{ "range":
     { "@timestamp": {
           "gte": "2018-02-20T13:55:06.387Z",
           "lte": "2018-02-23T13:55:06.387Z"
       }
     }
 }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ElasticSearch词组前缀查询多个字段

来自分类Dev

Elasticsearch:[过滤的]查询不支持[突出显示]

来自分类Dev

Elasticsearch子字段查询

来自分类Dev

为什么在Elasticsearch 0.90 more_like_this_field查询中不支持stop_words?

来自分类Dev

在grails中使用elasticsearch查询嵌套字段

来自分类Dev

DRF 3.0.1:.create()方法不支持可写的嵌套字段

来自分类Dev

elasticsearch:重命名查询的输出字段

来自分类Dev

Elasticsearch通配符查询不支持字段分析器

来自分类Dev

不支持ElasticSearch script_lang [groovy]

来自分类Dev

Elasticsearch:如何查询或汇总多值字段计数

来自分类Dev

Elasticsearch错误:[parsing_exception] [match_phrase]查询不支持[first_name]

来自分类Dev

Elasticsearch查询多个子字段

来自分类Dev

Elasticsearch时间字段和范围查询

来自分类Dev

Spring Data Elasticsearch是否支持日期字段的多种日期格式

来自分类Dev

Elasticsearch在数字范围字段上的聚合

来自分类Dev

Elasticsearch查询的子字段

来自分类Dev

Elasticsearch子字段查询

来自分类Dev

java.time.temporal.UnsupportedTemporalTypeException:不支持的字段:OffsetSeconds

来自分类Dev

ElasticSearch多字段搜索查询

来自分类Dev

elasticsearch对存在的字段运行任何查询

来自分类Dev

ElasticSearch has_child查询不支持query_string

来自分类Dev

Elasticsearch:对嵌套字段的多重匹配查询

来自分类Dev

条款查询在Elasticsearch 2.3.3中不支持minimum_match

来自分类Dev

Elasticsearch 多字段 OR 查询

来自分类Dev

使 ElasticSearch 处理包含范围的字段

来自分类Dev

(Impala) 在字段中选择最常见的值会导致“选择列表中不支持子查询”

来自分类Dev

Elasticsearch - 针对聚合的查询字段

来自分类Dev

不支持的字段值:一个函数(在字段创建时间中找到)

来自分类Dev

Elasticsearch 查询:对两个字段进行范围查询,但一个是可选字段

Related 相关文章

  1. 1

    ElasticSearch词组前缀查询多个字段

  2. 2

    Elasticsearch:[过滤的]查询不支持[突出显示]

  3. 3

    Elasticsearch子字段查询

  4. 4

    为什么在Elasticsearch 0.90 more_like_this_field查询中不支持stop_words?

  5. 5

    在grails中使用elasticsearch查询嵌套字段

  6. 6

    DRF 3.0.1:.create()方法不支持可写的嵌套字段

  7. 7

    elasticsearch:重命名查询的输出字段

  8. 8

    Elasticsearch通配符查询不支持字段分析器

  9. 9

    不支持ElasticSearch script_lang [groovy]

  10. 10

    Elasticsearch:如何查询或汇总多值字段计数

  11. 11

    Elasticsearch错误:[parsing_exception] [match_phrase]查询不支持[first_name]

  12. 12

    Elasticsearch查询多个子字段

  13. 13

    Elasticsearch时间字段和范围查询

  14. 14

    Spring Data Elasticsearch是否支持日期字段的多种日期格式

  15. 15

    Elasticsearch在数字范围字段上的聚合

  16. 16

    Elasticsearch查询的子字段

  17. 17

    Elasticsearch子字段查询

  18. 18

    java.time.temporal.UnsupportedTemporalTypeException:不支持的字段:OffsetSeconds

  19. 19

    ElasticSearch多字段搜索查询

  20. 20

    elasticsearch对存在的字段运行任何查询

  21. 21

    ElasticSearch has_child查询不支持query_string

  22. 22

    Elasticsearch:对嵌套字段的多重匹配查询

  23. 23

    条款查询在Elasticsearch 2.3.3中不支持minimum_match

  24. 24

    Elasticsearch 多字段 OR 查询

  25. 25

    使 ElasticSearch 处理包含范围的字段

  26. 26

    (Impala) 在字段中选择最常见的值会导致“选择列表中不支持子查询”

  27. 27

    Elasticsearch - 针对聚合的查询字段

  28. 28

    不支持的字段值:一个函数(在字段创建时间中找到)

  29. 29

    Elasticsearch 查询:对两个字段进行范围查询,但一个是可选字段

热门标签

归档