0
我在一個索引中有來自不同應用程序的文檔,應用程序名稱是每個文檔中的一個字段。現在我想要統計每個應用程序每天的文檔數量。應用程序名稱採用字符串格式,因此我無法使用過濾條件。 雖然低於GET查詢每層可以combine query_string和聚合
{
"query": {
"filtered": {
"query": {
"query_string": {
"query": "+environmentType:prod +application:app1",
"analyze_wildcard": true
}
}
}
}
}
過濾,我可以用這個聚集了簡單的日常計數
{
"aggs": {
"simpleDatehHistogram": {
"date_histogram": {
"field": "timestamp",
"interval": "day"
}
}
}
}
我似乎不能夠把它們結合在一起,使應用程序過濾器應用於我的聚合結果。
這是我的索引映射。
{
"myIndex" : {
"mappings" : {
"myType" : {
"properties" : {
"application" : {
"type" : "string"
},
"environmentType" : {
"type" : "string"
},
"event" : {
"properties" : {
"Id" : {
"type" : "long"
},
"documentId" : {
"type" : "string"
},
}
},
"hostname" : {
"type" : "string"
},
"id" : {
"type" : "string"
},
"timestamp" : {
"type" : "date",
"format" : "dateOptionalTime"
},
"timestampEpoch" : {
"type" : "long"
},
"type" : {
"type" : "string"
},
"version" : {
"type" : "string"
}
}
}
}
}
}
這是我真實目的是試圖的第一件事情,但結果是相同的,無論我的應用程序的名稱,所以我想這是不是應用的過濾器。 .. – Acalypha
你可以只發布你的索引映射。 'GET index/type/_mapping' – Richa
我剛剛嘗試過上面的查詢,它確實在上面應用查詢的基礎上爲我帶來了聚合桶。你能詳細解釋一下嗎? – Richa