Kibana文档说:
When lucene is selected as your query language you can also submit queries using the Elasticsearch Query DSL.
但是,每当我尝试在“发现” Pane 中输入这样的查询时,都会收到解析错误。这些查询在“开发工具” Pane 中运行良好。
例如,如果我尝试像这样的简单查询:
{"query":{"match_phrase":{"summary":"stochastic noise"}}}
我收到以下错误:
Discover: [parsing_exception] no [query] registered for [query], with { line=1 & col=356 }
Error: [parsing_exception] no [query] registered for [query], with { line=1 & col=356 }
at respond (http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:111:161556)
at checkRespForFailure (http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:111:160796)
at http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:105:285566
at processQueue (http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:58:132456)
at http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:58:133349
at Scope.$digest (http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:58:144239)
at Scope.$apply (http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:58:147018)
at done (http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:58:100026)
at completeRequest (http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:58:104697)
at XMLHttpRequest.xhr.onload (http://<mydomain>:5601/bundles/vendors.bundle.js?v=16602:58:105435)
(我已经删除了上面的域,并替换为
<mydomain>
)上面的查询工作正常,并在命令行上使用cURL或使用
GET /_search
{
"query": {
"match_phrase": {
"summary": "stochastic noise"
}
}
}
在开发工具控制台中。
我希望使用“发现”面板中的
more_like_this
查询,因此(我认为)我将需要使用查询DSL,而不仅仅是使用直接的Lucene查询语法。但是,如果有一种使用特殊查询的方法,例如使用直链lucene(或kuery),那将是很好的。
最佳答案
原因很简单,因为输入框仅支持query
部分中包含的内容,因此,如果输入此内容,它将起作用:
{"match_phrase":{"summary":"stochastic noise"}}
如果您考虑一下这是有道理的,即
aggs
部分在“发现” Pane 中没有任何意义,并且默认设置已经处理了from/size
属性。如果查看完整的查询DSL,您会看到有几个部分:
query
,aggs
,from
,size
,_source
,highlight
等。在Discover Pane 中,您只应指定query
部分中的内容其他。
关于elasticsearch - 在Kibana Discover中使用Elastic Query DSL启用more_like_this等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49696892/