# @cybernetex/kbn-es-query 中文文档

规范地址：https://npmcn.com/package/%40cybernetex/kbn-es-query/

版本：1\.0\.2
npm 元数据更新时间：2022-04-05T02:25:33.680Z
中文译文更新时间：2026-11-11T06:41:34.310Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40cybernetex/kbn-es-query
原文对照：https://npmcn.com/package/%40cybernetex/kbn-es-query/?lang=original

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：695 kB，279 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：3 个
- 首次发布：2019-08-17T01:48:07.804Z
- 最新版本发布：2019-08-21T04:39:14.929Z
- 近 30 天下载量：7266（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：3（近 12 个月 0 个）

## 中文简介

这个模块负责为基巴纳生成弹性搜索查询. 见下文各分目录的说明.

## 安装

```sh
npm install @cybernetex/kbn-es-query
```

也可以使用：`pnpm add @cybernetex/kbn-es-query`、`yarn add @cybernetex/kbn-es-query`、`bun add @cybernetex/kbn-es-query`

## README

# kbn- s- query (英语)

这个模块负责为基巴纳生成弹性搜索查询. 见下文各分目录的说明.

## 斯凯里语name

这个文件夹包含了将 Lucene/KQL 查询和过滤合并到一个弹性搜索查询的代码.

```javascript
buildEsQuery(indexPattern, queries, filters, config)
```

从提供的查询和过滤器组合生成 Elasticsearch 查询 DSL.

```javascript
buildQueryFromFilters(filters, indexPattern)
```

从给定的过滤器中生成弹性搜索查询 DSL.

```javascript
luceneStringToDsl(query)
```

从给定的 Lucene 查询中生成弹性搜索查询 DSL .

```javascript
migrateFilter(filter, indexPattern)
```

Migrates a filter 从之前的"弹性搜索"版本到当前版本.

```javascript
decorateQuery(query, queryStringOptions)
```

用给定的选项装饰一个弹性搜索查询 字符串查询 .

## 过滤器

此文件夹包含与 Kibana Filter 对象相关的代码, 包括它们的定义, 以及创建它们的帮助功能 。 Kibana 的过滤器总是包含 `meta` 描述哪些属性 `index` 过滤器对应,以及关于特定过滤器的额外数据.

下列每个函数所创建的对象对应于 `lib` 目录( 例如 ). `PhraseFilter`, (中文(简体) ), `RangeFilter`页:1

```javascript
buildExistsFilter(field, indexPattern)
```

创建过滤器( N)`ExistsFilter`),所在区域.

```javascript
buildPhraseFilter(field, value, indexPattern)
```

创建过滤器( E)`PhraseFilter`在给定字段与给定值相匹配的地方.

```javascript
buildPhrasesFilter(field, params, indexPattern)
```

创建过滤器( N)`PhrasesFilter`当给定字段匹配一个或多个给定值时. `params` 应该是一系列数值.

```javascript
buildQueryFilter(query, index)
```

创建过滤器( N)`CustomFilter`)对应原始弹性搜索查询DSL对象.

```javascript
buildRangeFilter(field, params, indexPattern)
```

创建过滤器( N)`RangeFilter`),指定字段的值位于指定范围内. `params` 应包含 `lt`, (中文(简体) ), `lte`, (中文(简体) ), `gt`,和(或) `gte`。 。 。 .

## ku

此文件夹包含与使用 Kibana 查询语言生成 Elasticsearch 查询对应的代码.

一般来说,你只需要担心从 `ast` 文件夹 :

```javascript
fromExpression(expression)
```

生成一个对应原始 Kibana 查询的抽象语法树 `expression`。 。 。 .

```javascript
toElasticsearchQuery(node, indexPattern)
```

使用抽象语法树( 从上一个方法生成) 并使用给定的 DSL 生成 Elasticsearch 查询 `indexPattern`。请注意,如果没有 `indexPattern` ,然后会生成一个 Elasticsearch 查询 DSL, 忽略索引模式被脚本字段、字段类型等.

## 常见问题

### @cybernetex/kbn-es-query 是什么？

这个模块负责为基巴纳生成弹性搜索查询\. 见下文各分目录的说明\.

### 如何安装 @cybernetex/kbn-es-query？

在项目目录运行 npm install @cybernetex/kbn-es-query，或使用 pnpm add / yarn add / bun add。

### @cybernetex/kbn-es-query 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/cybernetex\_\_kbn-es-query 是否存在。

### @cybernetex/kbn-es-query 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @cybernetex/kbn-es-query 可以商用吗？

@cybernetex/kbn-es-query 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @cybernetex/kbn-es-query 的下载量有多少？

根据 npm 官方下载统计，@cybernetex/kbn-es-query 在 2026/10/11 – 2026/11/09 这 30 天内被下载 7,266 次，日均约 242 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @cybernetex/kbn-es-query 还在维护吗？

最新版本 1\.0\.2 发布于 2019/08/21（7 年前）；至今共发布 3 个版本，其中过去 12 个月发布了 0 个；首次发布于 2019/08/17。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

