Elasticsearch aggs curl请求截断结果

时间:2016-06-23 12:53:42

标签: curl elasticsearch

我尝试使用以下命令从ES获取aggs:

curl --user username:pwd -XGET 'localhost:9200/my_index-2016-06-14/_search?pretty' -d '
{
  "size": 0, 
  "query": {
    "match_all": {}
  },
  "aggs": {
    "my_stores": {
      "terms": {
        "field": "store",
        "size": 5000
      }
    }
  }
}

在我的ES索引中," store"字段包含形式为" ABC-123CD"的几种不同商店代码之一。当我收到结果时,我会为每个值获得类似的内容:

{
  "key" : "123cd",
  "doc_count" : 152
}

换句话说,结果被截断了,我认为它是由于某种方式的连字符。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我自己解决了这个问题,实际上很简单,只需将'.raw'添加到字段值中,如下所示:

curl --user username:pwd -XGET 'localhost:9200/my_index-2016-06-14/_search?pretty' -d '
{
  "size": 0, 
  "query": {
    "match_all": {}
  },
  "aggs": {
    "my_stores": {
      "terms": {
        "field": "store.raw",
        "size": 5000
      }
    }
  }
}