elasticsearch,lucene,logstash,Indexing,elasticsearch,Lucene,Logstash" /> elasticsearch,lucene,logstash,Indexing,elasticsearch,Lucene,Logstash" />

Indexing Elasticsearch不按字段名返回文档

Indexing Elasticsearch不按字段名返回文档,indexing,elasticsearch,lucene,logstash,Indexing,elasticsearch,Lucene,Logstash,我是新手。我似乎在按某个字段选择文档时遇到了问题。对我来说,它就像一个腐败的索引,但我不确定 这是一个我可以检索的文档,可以获取event.type和event.accountId字段: 请注意event.type:USER\u LOGIN。现在,我想查找具有此字段/值组合的所有文档: curl -XGET 'http://127.0.0.1:9200/events-2015.04.08/_search?q=event.type:USER_LOGIN&pretty=1' { "too

我是新手。我似乎在按某个字段选择文档时遇到了问题。对我来说,它就像一个腐败的索引,但我不确定

这是一个我可以检索的文档,可以获取event.type和event.accountId字段:

请注意event.type:USER\u LOGIN。现在,我想查找具有此字段/值组合的所有文档:

curl -XGET 'http://127.0.0.1:9200/events-2015.04.08/_search?q=event.type:USER_LOGIN&pretty=1'
{
  "took" : 2,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 0,
    "max_score" : null,
    "hits" : [ ]
  }
}
没有结果。我可以通过event.accountId找到文档,但:


您没有提供映射,没有使用索引命令,也没有索引原始文档。无论如何,我认为这是因为类型是一种保留字。是否尝试将此字段的名称更改为其他名称?不确定为什么映射或索引命令很重要。事实上,我能够用一个字段而不是另一个字段搜索文档,这似乎是问题的症结所在。不过,我会尝试更改字段的名称,并在此处作出响应。我还将用文档如何索引的详细信息更新这个问题。映射确实很重要。如果字段为index:none,则不能按其搜索。我明白了,谢谢。如前所述,我对elasticsearch非常陌生。我只是用logstash为文档编制索引,甚至不知道索引映射。无论如何,将event.type更改为EventType似乎可以修复此问题@德拉戈斯特如果你想提交答案,我会接受的。
curl -XGET 'http://127.0.0.1:9200/events-2015.04.08/_search?q=event.type:USER_LOGIN&pretty=1'
{
  "took" : 2,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 0,
    "max_score" : null,
    "hits" : [ ]
  }
}
$ curl -XGET 'http://127.0.0.1:9200/events-2015.04.08/_search?q=event.accountId:10399&pretty=1'
{
  "took" : 2,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 2,
    "max_score" : 1.0,
    "hits" : [ {
      "_index" : "events-2015.04.08",
      "_type" : "event",
      "_id" : "AUyYpkjCr99VdGrSLpIW",
      "_score" : 1.0,
      "_source": {...}
    }, {
      "_index" : "events-2015.04.08",
      "_type" : "event",
      "_id" : "AUyYpkl-r99VdGrSLpIX",  # <-- This is the doc I want
      "_score" : 1.0,
      "_source": {...}
    } ]
  }
}
input {
  sqs {
    queue => "the_queue"
    region => "us-west-2"
    type => "event"
  }
}
filter {
  json {
    source => "Message"
    target => "event"
    remove_field => [ "Message" ]
  }
  mutate {
    rename => { "Type" => "EventType" }
  }
  date {
    match => [ "Timestamp", "ISO8601" ]
  }
}