现有业务中很少用到match_phrase这个搜索,最近在实现基于elasticsearch的日志搜集 并自助告警一个业务,因为日志的不规范 所以需要用到对某个日志短语进行搜索,不能像match做全文检索。

比如需要精确寻找日志中的请求第三方CAKA服务器失败

GET /filebeat*/_search
{
"query": {
"match_phrase": {
"message": "请求第三方CAKA服务器失败"
}
}
}

查询结果中就完全包含了这句短语。不会进行分词搜索。