kbn- s- query (英语)
这个模块负责为基巴纳生成弹性搜索查询. 见下文各分目录的说明.
斯凯里语name
这个文件夹包含了将 Lucene/KQL 查询和过滤合并到一个弹性搜索查询的代码.
buildEsQuery(indexPattern, queries, filters, config)
从提供的查询和过滤器组合生成 Elasticsearch 查询 DSL.
buildQueryFromFilters(filters, indexPattern)
从给定的过滤器中生成弹性搜索查询 DSL.
luceneStringToDsl(query)
从给定的 Lucene 查询中生成弹性搜索查询 DSL .
migrateFilter(filter, indexPattern)
Migrates a filter 从之前的"弹性搜索"版本到当前版本.
decorateQuery(query, queryStringOptions)
用给定的选项装饰一个弹性搜索查询 字符串查询 .
过滤器
此文件夹包含与 Kibana Filter 对象相关的代码, 包括它们的定义, 以及创建它们的帮助功能 。 Kibana 的过滤器总是包含 meta 描述哪些属性 index 过滤器对应,以及关于特定过滤器的额外数据.
下列每个函数所创建的对象对应于 lib 目录( 例如 ). PhraseFilter, (中文(简体) ), RangeFilter页:1
buildExistsFilter(field, indexPattern)
创建过滤器( N)ExistsFilter),所在区域.
buildPhraseFilter(field, value, indexPattern)
创建过滤器( E)PhraseFilter在给定字段与给定值相匹配的地方.
buildPhrasesFilter(field, params, indexPattern)
创建过滤器( N)PhrasesFilter当给定字段匹配一个或多个给定值时. params 应该是一系列数值.
buildQueryFilter(query, index)
创建过滤器( N)CustomFilter)对应原始弹性搜索查询DSL对象.
buildRangeFilter(field, params, indexPattern)
创建过滤器( N)RangeFilter),指定字段的值位于指定范围内. params 应包含 lt, (中文(简体) ), lte, (中文(简体) ), gt,和(或) gte。 。 。 .
ku
此文件夹包含与使用 Kibana 查询语言生成 Elasticsearch 查询对应的代码.
一般来说,你只需要担心从 ast 文件夹 :
fromExpression(expression)
生成一个对应原始 Kibana 查询的抽象语法树 expression。 。 。 .
toElasticsearchQuery(node, indexPattern)
使用抽象语法树( 从上一个方法生成) 并使用给定的 DSL 生成 Elasticsearch 查询 indexPattern。请注意,如果没有 indexPattern ,然后会生成一个 Elasticsearch 查询 DSL, 忽略索引模式被脚本字段、字段类型等.