我有以下查询返回异常和/或错误。 事情是它返回相同的结果 - 这是该查询的预期行为。
我如何管理仅返回唯一结果的结果?
这是我的疑问:
{
"query": {
"bool": {
"should": [
{ "match": { "message": "error" }},
{ "match": { "message": "exception" }}
],
"must_not": {
"match": {
"message": "io.vertx.spi.cluster.zookeeper.ZookeeperClusterManager"
}
}
}
}
}
答案 0 :(得分:0)
您需要添加聚合来获取(并计算)唯一的异常/错误。尝试这样的事情:
{
"query": {
"bool": {
"should": [
{ "match": { "message": "error" }},
{ "match": { "message": "exception" }}
],
"must_not": {
"match": {
"message": "io.vertx.spi.cluster.zookeeper.ZookeeperClusterManager"
}
}
}
},
"aggs" : {
"errors_exceptions" : {
"terms" : { "field" : "message" }
}
}
}
PS:如果经常这样做,预先计算异常的哈希可能会更便宜,例如in your logappender (this is just one example, you can probably find something similar for your use case)或Logstash。