ソースを参照

doc(*): fix links in chn to pass validation

Signed-off-by: Jiyong Huang <huangjy@emqx.io>
Jiyong Huang 3 年 前
コミット
b8a8854367

+ 8 - 8
docs/zh_CN/edgex/edgex_rule_engine_tutorial.md

@@ -32,7 +32,7 @@
   CREATE STREAM demo (temperature bigint) WITH (FORMAT="JSON"...)
   CREATE STREAM demo (temperature bigint) WITH (FORMAT="JSON"...)
   ```
   ```
 
 
-  然而在 EdgeX 中,数据类型定义在 EdgeX event/reading 中已经指定,为了提升使用体验,用户可以在创建流的时候不指定数据类型。当接收到来自于消息总线的数据的时候,会根规则转换为[相应的数据类型](../rules/sources/edgex.md)。
+  然而在 EdgeX 中,数据类型定义在 EdgeX event/reading 中已经指定,为了提升使用体验,用户可以在创建流的时候不指定数据类型。当接收到来自于消息总线的数据的时候,会根规则转换为[相应的数据类型](../rules/sources/builtin/edgex.md)。
 
 
 - 扩展支持 EdgeX 消息总线目标(sink),用于将处理结果写回至 EdgeX 消息总线。用户也可以选择将分析结果发送到 eKuiper 之前已经支持的 RestAPI 接口等。
 - 扩展支持 EdgeX 消息总线目标(sink),用于将处理结果写回至 EdgeX 消息总线。用户也可以选择将分析结果发送到 eKuiper 之前已经支持的 RestAPI 接口等。
 
 
@@ -89,7 +89,7 @@ d4b236a7b561   redis:6.2.4-alpine                                              "
       EDGEX__DEFAULT__CONNECTIONSELECTOR: edgex.redisMsgBus
       EDGEX__DEFAULT__CONNECTIONSELECTOR: edgex.redisMsgBus
   ```
   ```
 * `mqtt/zeromq` 消息总线: 根据目标总线类型填写相应参数,指定必要的客户端凭证
 * `mqtt/zeromq` 消息总线: 根据目标总线类型填写相应参数,指定必要的客户端凭证
-  这里以 mqtt 消息总线为例,确保相应的连接信息存在于此文件 `etc/connections/connection.yaml` 中, [更多信息](../rules/sources/edgex.md#connectionselector) 请参考
+  这里以 mqtt 消息总线为例,确保相应的连接信息存在于此文件 `etc/connections/connection.yaml` 中, [更多信息](../rules/sources/builtin/edgex.md#connectionselector) 请参考
   ```yaml
   ```yaml
   environment:
   environment:
       CONNECTION__EDGEX__MQTTMSGBUS__PORT: 1883
       CONNECTION__EDGEX__MQTTMSGBUS__PORT: 1883
@@ -101,7 +101,7 @@ d4b236a7b561   redis:6.2.4-alpine                                              "
       EDGEX__DEFAULT__CONNECTIONSELECTOR: edgex.mqttMsgBus
       EDGEX__DEFAULT__CONNECTIONSELECTOR: edgex.mqttMsgBus
   ```
   ```
   
   
-做完这些修改后,请参考这篇[文档](../rules/sinks/edgex.md#使用连接重用功能发布)了解如何使用连接重用功能
+做完这些修改后,请参考这篇[文档](../rules/sinks/builtin/edgex.md#使用连接重用功能发布)了解如何使用连接重用功能
 
 
 
 
 ### 使用 Redis 作为 KV 存储
 ### 使用 Redis 作为 KV 存储
@@ -175,11 +175,11 @@ default:
 .....  
 .....  
 ```
 ```
 
 
-更多关于配置文件的信息,请参考[该文档](../rules/sources/edgex.md).
+更多关于配置文件的信息,请参考[该文档](../rules/sources/builtin/edgex.md).
 
 
 ## 创建规则
 ## 创建规则
 
 
-让我们创建一条规则,将分析结果发送至 MQTT 服务器,关于 MQTT 目标的相关配置,请参考[这个链接](../rules/sinks/mqtt.md)。与创建流的过程类似,你可以选择使用 REST 或者命令行来管理规则。
+让我们创建一条规则,将分析结果发送至 MQTT 服务器,关于 MQTT 目标的相关配置,请参考[这个链接](../rules/sinks/builtin/mqtt.md)。与创建流的过程类似,你可以选择使用 REST 或者命令行来管理规则。
 
 
 以下例子将选出所有 `events` 主题上所有的数据,分析结果将被
 以下例子将选出所有 `events` 主题上所有的数据,分析结果将被
 
 
@@ -243,7 +243,7 @@ Rule rule1 was created successfully, please use 'cli getstatus rule rule1' comma
 
 
 ------
 ------
 
 
-如想将结果发送到别的目标,请参考 eKuiper 中支持的[其它目标](../rules/overview.md#目标动作)。你现在可以看一下在 `log/stream.log`中的日志文件,查看规则的详细信息。
+如想将结果发送到别的目标,请参考 eKuiper 中支持的[其它目标](../rules/overview.md#目标/动作)。你现在可以看一下在 `log/stream.log`中的日志文件,查看规则的详细信息。
 
 
 ```
 ```
 time="2021-07-08 01:03:08" level=info msg="Serving kuiper (version - 1.2.1) on port 20498, and restful api on http://0.0.0.0:59720. \n" file="server/server.go:144"
 time="2021-07-08 01:03:08" level=info msg="Serving kuiper (version - 1.2.1) on port 20498, and restful api on http://0.0.0.0:59720. \n" file="server/server.go:144"
@@ -327,10 +327,10 @@ Connecting to 127.0.0.1:20498...
 ### 扩展阅读
 ### 扩展阅读
 
 
 - 从 eKuiper 0.9.1 版本开始,通过一个单独的 Docker 镜像提供了 [可视化 web 用户交互界面](../operation/manager-ui/overview.md),您可以通过该 web 界面进行流、规则和插件等管理。
 - 从 eKuiper 0.9.1 版本开始,通过一个单独的 Docker 镜像提供了 [可视化 web 用户交互界面](../operation/manager-ui/overview.md),您可以通过该 web 界面进行流、规则和插件等管理。
-- 阅读 [EdgeX 源](../rules/sources/edgex.md) 获取更多详细信息,以及类型转换等。
+- 阅读 [EdgeX 源](../rules/sources/builtin/edgex.md) 获取更多详细信息,以及类型转换等。
 - [如何使用 meta 函数抽取在 EdgeX 消息总线中发送的更多信息?](edgex_meta.md) 设备服务往总线上发送数据的时候,一些额外的信息也随之发送,比如时间创建时间,id 等。如果你想在 SQL 语句中使用这些信息,请参考这篇文章。
 - [如何使用 meta 函数抽取在 EdgeX 消息总线中发送的更多信息?](edgex_meta.md) 设备服务往总线上发送数据的时候,一些额外的信息也随之发送,比如时间创建时间,id 等。如果你想在 SQL 语句中使用这些信息,请参考这篇文章。
 - [eKuiper 中使用 Golang 模版 (template) 定制分析结果](../rules/data_template.md) 分析结果在发送给不同的 sink 之前,可以使用数据模版对结果进行二次处理,参考这片文章可以获取更多的关于数据模版的使用场景。
 - [eKuiper 中使用 Golang 模版 (template) 定制分析结果](../rules/data_template.md) 分析结果在发送给不同的 sink 之前,可以使用数据模版对结果进行二次处理,参考这片文章可以获取更多的关于数据模版的使用场景。
-- [EdgeX 消息总线目标](../rules/sinks/edgex.md). 该文档描述了如何使用 EdgeX 消息总线目标。如果想把你的分析结果被别的 EdgeX 服务消费,你可以通过这个 sink 发送 EdgeX 格式的数据,别的 EdgeX 服务可以通过这个 eKuiper sink 暴露出来的新的消息总线进行订阅。
+- [EdgeX 消息总线目标](../rules/sinks/builtin/edgex.md). 该文档描述了如何使用 EdgeX 消息总线目标。如果想把你的分析结果被别的 EdgeX 服务消费,你可以通过这个 sink 发送 EdgeX 格式的数据,别的 EdgeX 服务可以通过这个 eKuiper sink 暴露出来的新的消息总线进行订阅。
 - [eKuiper 插件开发教程](../extension/native/develop/plugins_tutorial.md): eKuiper 插件机制基于 Go 语言的插件机制,使用户可以构建松散耦合的插件程序,在运行时动态加载和绑定,如果您对开发插件有兴趣,请参考该文章。
 - [eKuiper 插件开发教程](../extension/native/develop/plugins_tutorial.md): eKuiper 插件机制基于 Go 语言的插件机制,使用户可以构建松散耦合的插件程序,在运行时动态加载和绑定,如果您对开发插件有兴趣,请参考该文章。
 
 
 如想了解更多的 LF Edge eKuiper 的信息,请参考以下资源。
 如想了解更多的 LF Edge eKuiper 的信息,请参考以下资源。

+ 2 - 2
docs/zh_CN/edgex/edgex_source_tutorial.md

@@ -1,6 +1,6 @@
 # 配置从 EdgeX 到 eKuiper 的数据流
 # 配置从 EdgeX 到 eKuiper 的数据流
 
 
-源从其他系统(如 EdgeX foundry)将数据输入到 eKuiper,这些系统被定义为流。 [EdgeX 源](../rules/sources/edgex.md) 定义了如何将数据从 EdgeX 输入 eKuiper 的配置属性。 在本教程中,我们将演示从 EdgeX 到 eKuiper 的各种数据流以及如何针对不同类型的数据流配置源。
+源从其他系统(如 EdgeX foundry)将数据输入到 eKuiper,这些系统被定义为流。 [EdgeX 源](../rules/sources/builtin/edgex.md) 定义了如何将数据从 EdgeX 输入 eKuiper 的配置属性。 在本教程中,我们将演示从 EdgeX 到 eKuiper 的各种数据流以及如何针对不同类型的数据流配置源。
 
 
 ## 典型数据流模型
 ## 典型数据流模型
 
 
@@ -15,7 +15,7 @@
 
 
 默认情况下,使用第一种数据流,允许用户在发送到 eKuiper 规则引擎之前进行准备(转换、添加、过滤等)和修饰(格式化、压缩、加密等)。 如果用户不需要对数据进行转换,并希望在 eKuiper 中处理原始数据以减少开销,则可以直接连接到消息总线。
 默认情况下,使用第一种数据流,允许用户在发送到 eKuiper 规则引擎之前进行准备(转换、添加、过滤等)和修饰(格式化、压缩、加密等)。 如果用户不需要对数据进行转换,并希望在 eKuiper 中处理原始数据以减少开销,则可以直接连接到消息总线。
 
 
-EdgeX 源的完整属性列表可以在 [这里](../rules/sources/edgex.md#global-configurations) 查看。 有两个定义连接模型的关键属性:`topic` 和 `messageType`。 本文将探索如何配置它们,以便可以采用连接模型。
+EdgeX 源的完整属性列表可以在 [这里](../rules/sources/builtin/edgex.md#全局配置) 查看。 有两个定义连接模型的关键属性:`topic` 和 `messageType`。 本文将探索如何配置它们,以便可以采用连接模型。
 
 
 ## 连接到应用服务
 ## 连接到应用服务
 
 

+ 17 - 17
docs/zh_CN/extension/native/develop/overview.md

@@ -10,10 +10,10 @@ eKuiper 插件开发者在开发过程中,可以指定元数据文件,这些
 
 
 ## 源 (Sources)
 ## 源 (Sources)
 
 
-| 名称                  | 描述                                                  | 备注                                                |
-| --------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| [zmq](../sources/zmq.md)| 该插件监听 Zero Mq 消息并发送到 eKuiper 流中 | 插件样例,不可用于生产环境 |
-| [random](../sources/random.md) | 该插件按照指定模式生成消息   | 插件样例,不可用于生产环境 |
+| 名称                                                | 描述                              | 备注            |
+|---------------------------------------------------|---------------------------------|---------------|
+| [zmq](../../../rules/sources/plugin/zmq.md)       | 该插件监听 Zero Mq 消息并发送到 eKuiper 流中 | 插件样例,不可用于生产环境 |
+| [random](../../../rules/sources/plugin/random.md) | 该插件按照指定模式生成消息                   | 插件样例,不可用于生产环境 |
 
 
 ### source 元数据文件格式
 ### source 元数据文件格式
 
 
@@ -157,12 +157,12 @@ source 的大部分属性用户通过对应的配置文件指定,用户无法
 
 
 ## 动作 (Sinks/Actions)
 ## 动作 (Sinks/Actions)
 
 
-| 名称                  | 描述                                                  | 备注                                                |
-| --------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
-| [file](../sinks/file.md) | 该插件将分析结果保存到某个指定到文件系统中 | 插件样例,不可用于生产环境 |
-| [zmq](../sinks/zmq.md)   | 该插件将分析结果发送到 Zero Mq 的主题中  | 插件样例,不能用于生产环境 |
-| [Influxdb](../sinks/influx.md)   | 该插件将分析结果发送到 InfluxDB 中  | 由 [@smart33690](https://github.com/smart33690) 提供 |
-| [TDengine](../sinks/tdengine.md) | 该插件将分析结果发送到 TDengine 中 |  |
+| 名称                                                  | 描述                       | 备注                                                |
+|-----------------------------------------------------|--------------------------|---------------------------------------------------|
+| [file](../../../rules/sinks/plugin/file.md)         | 该插件将分析结果保存到某个指定到文件系统中    | 插件样例,不可用于生产环境                                     |
+| [zmq](../../../rules/sinks/plugin/zmq.md)           | 该插件将分析结果发送到 Zero Mq 的主题中 | 插件样例,不能用于生产环境                                     |
+| [Influxdb](../../../rules/sinks/plugin/influx.md)   | 该插件将分析结果发送到 InfluxDB 中   | 由 [@smart33690](https://github.com/smart33690) 提供 |
+| [TDengine](../../../rules/sinks/plugin/tdengine.md) | 该插件将分析结果发送到 TDengine 中   |                                                   |
 
 
 ### sink 元数据文件格式
 ### sink 元数据文件格式
 
 
@@ -275,13 +275,13 @@ source 的大部分属性用户通过对应的配置文件指定,用户无法
 
 
 ## 函数 (Functions)
 ## 函数 (Functions)
 
 
-| 名称                                          | 描述                                                         | 备注                       |
-| --------------------------------------------- | ------------------------------------------------------------ | -------------------------- |
-| [echo](../functions/functions.md)                | 原样输出参数值                                               | 插件样例,不可用于生产环境 |
-| [countPlusOne](../functions/functions.md)        | 输出参数长度加一的值                                         | 插件样例,不可用于生产环境 |
-| [accumulateWordCount](../functions/functions.md) | 函数统计一共有多少个单词                                     | 插件样例,不可用于生产环境 |
-| [resize](../functions/functions.md)              | 创建具有新尺寸(宽度,高度)的缩放图像。如果 width 或 height 设置为0,则将其设置为长宽比保留值 | 插件样例,不可用于生产环境 |
-| [thumbnail](../functions/functions.md)           | 将保留宽高比的图像缩小到最大尺寸( maxWidth,maxHeight)。     | 插件样例,不可用于生产环境 |
+| 名称                                                       | 描述                                                      | 备注            |
+|----------------------------------------------------------|---------------------------------------------------------|---------------|
+| [echo](../../../sqls/custom_functions.md)                | 原样输出参数值                                                 | 插件样例,不可用于生产环境 |
+| [countPlusOne](../../../sqls/custom_functions.md)        | 输出参数长度加一的值                                              | 插件样例,不可用于生产环境 |
+| [accumulateWordCount](../../../sqls/custom_functions.md) | 函数统计一共有多少个单词                                            | 插件样例,不可用于生产环境 |
+| [resize](../../../sqls/custom_functions.md)              | 创建具有新尺寸(宽度,高度)的缩放图像。如果 width 或 height 设置为0,则将其设置为长宽比保留值 | 插件样例,不可用于生产环境 |
+| [thumbnail](../../../sqls/custom_functions.md)           | 将保留宽高比的图像缩小到最大尺寸( maxWidth,maxHeight)。                  | 插件样例,不可用于生产环境 |
 
 
 eKuiper 具有许多内置函数,可以对数据执行计算。(具体文档参考 https://github.com/lf-edge/ekuiper/blob/master/docs/zh_CN/sqls/built-in_functions.md)
 eKuiper 具有许多内置函数,可以对数据执行计算。(具体文档参考 https://github.com/lf-edge/ekuiper/blob/master/docs/zh_CN/sqls/built-in_functions.md)
 
 

+ 5 - 5
docs/zh_CN/extension/native/develop/sink.md

@@ -1,6 +1,6 @@
 # 目标 (Sink) 扩展
 # 目标 (Sink) 扩展
 
 
-eKuiper 可以将数据接收到外部系统。 eKuiper具有对  [MQTT 消息服务器](../../../rules/sinks/mqtt.md) 和 [日志目标](../../../rules/sinks/log.md)的内置接收器支持。然而, 仍然需要将数据发布到各种外部系统,包括消息传递系统和数据库等。Sink (目标)扩展正是为了满足这一要求。
+eKuiper 可以将数据接收到外部系统。 eKuiper具有对  [MQTT 消息服务器](../../../rules/sinks/builtin/mqtt.md) 和 [日志目标](../../../rules/sinks/builtin/log.md)的内置接收器支持。然而, 仍然需要将数据发布到各种外部系统,包括消息传递系统和数据库等。Sink (目标)扩展正是为了满足这一要求。
 
 
 ## 开发
 ## 开发
 
 
@@ -8,9 +8,9 @@ eKuiper 可以将数据接收到外部系统。 eKuiper具有对  [MQTT 消息
 
 
 为 eKuiper 开发 Sink (目标),是实现 [api.Sink](https://github.com/lf-edge/ekuiper/blob/master/pkg/api/stream.go) 接口并将其导出为 golang 插件。
 为 eKuiper 开发 Sink (目标),是实现 [api.Sink](https://github.com/lf-edge/ekuiper/blob/master/pkg/api/stream.go) 接口并将其导出为 golang 插件。
 
 
-在开始开发之前,您必须为 [golang 插件设置环境](../../overview.md#setup-the-plugin-developing-environment)。
+在开始开发之前,您必须为 [golang 插件设置环境](../overview.md#插件开发环境设置)。
 
 
-要开发 Sink (目标),必须实现 _Configure_ 方法。 接收器初始化后,将调用此方法。 在此方法中,将传入包含 [规则操作定义](../../../rules/overview.md#actions)中的配置映射,通常,将包含诸如外部系统的主机、端口、用户和密码之类的信息。您可以使用此映射来初始化此 Sink (目标)。
+要开发 Sink (目标),必须实现 _Configure_ 方法。 接收器初始化后,将调用此方法。 在此方法中,将传入包含 [规则操作定义](../../../rules/overview.md#目标/动作)中的配置映射,通常,将包含诸如外部系统的主机、端口、用户和密码之类的信息。您可以使用此映射来初始化此 Sink (目标)。
 
 
 ```go
 ```go
 //Called during initialization. Configure the sink with the properties from action definition 
 //Called during initialization. Configure the sink with the properties from action definition 
@@ -46,7 +46,7 @@ Collect(ctx StreamContext, data interface{}) error
 Close(ctx StreamContext) error
 Close(ctx StreamContext) error
 ```
 ```
 
 
-由于 Sink (目标)本身是一个插件,因此它必须位于主程序包中。 给定 Sink (目标)结构名称为 mySink。 在文件的最后,必须将 Sink (目标)导出为以下符号。 共有 [2种类型的导出符号](../../overview.md#plugin-development)。 对于 Sink (目标)扩展,通常需要状态,因此建议导出构造函数。
+由于 Sink (目标)本身是一个插件,因此它必须位于主程序包中。 给定 Sink (目标)结构名称为 mySink。 在文件的最后,必须将 Sink (目标)导出为以下符号。 共有 [2种类型的导出符号](../overview.md#插件开发)。 对于 Sink (目标)扩展,通常需要状态,因此建议导出构造函数。
 
 
 ```go
 ```go
 func MySink() api.Sink {
 func MySink() api.Sink {
@@ -75,7 +75,7 @@ go build -trimpath -modfile extensions.mod --buildmode=plugin -o plugins/sinks/M
 
 
 ### 使用
 ### 使用
 
 
-自定义 Sink (目标)在 [动作定义](../../../rules/overview.md#actions)规定。 它的名称用作操作的键, 配置就是值。
+自定义 Sink (目标)在 [动作定义](../../../rules/overview.md#目标/动作)规定。 它的名称用作操作的键, 配置就是值。
 
 
 如果您开发了 Sink (目标)实现 MySink,则应该具有:
 如果您开发了 Sink (目标)实现 MySink,则应该具有:
 1. 在插件文件中,将导出符号 MySink。
 1. 在插件文件中,将导出符号 MySink。

ファイルの差分が大きいため隠しています
+ 7 - 7
docs/zh_CN/extension/native/develop/source.md


+ 3 - 3
docs/zh_CN/extension/native/overview.md

@@ -32,7 +32,7 @@ eKuiper 允许用户自定义不同类型的扩展。
 1. 插件输出变量必须为**插件名的首字母大写形式**。 例如,插件名为 _file_ ,则其输出变量名必须为 _File_。
 1. 插件输出变量必须为**插件名的首字母大写形式**。 例如,插件名为 _file_ ,则其输出变量名必须为 _File_。
 2. _.so_ 文件的名字必须与输出变量名或者插件名相同。例如, _MySource.so_ 或 _mySink.so_。
 2. _.so_ 文件的名字必须与输出变量名或者插件名相同。例如, _MySource.so_ 或 _mySink.so_。
 
 
-### Version
+### 版本
 
 
 The user can **optionally** add a version string to the name of _.so_ to help identify the version of the plugin. The version can be then retrieved through describe CLI command or REST API. The naming convention is to add a version string to the name after _@_. The version can be any string. If the version string starts with "v", the "v" will be ignored in the return result. Below are some typical examples.
 The user can **optionally** add a version string to the name of _.so_ to help identify the version of the plugin. The version can be then retrieved through describe CLI command or REST API. The naming convention is to add a version string to the name after _@_. The version can be any string. If the version string starts with "v", the "v" will be ignored in the return result. Below are some typical examples.
 
 
@@ -41,7 +41,7 @@ The user can **optionally** add a version string to the name of _.so_ to help id
 
 
 If multiple versions of plugins with the same name in place, only the latest version(ordered by the version string) will be taken effect.
 If multiple versions of plugins with the same name in place, only the latest version(ordered by the version string) will be taken effect.
 
 
-## Setup the plugin developing environment
+## 插件开发环境设置
 
 
 It is required to build the plugin with exactly the same version of dependencies. And the plugin must implement interfaces exported by Kuiper, so the Kuiper project must be in the gopath.
 It is required to build the plugin with exactly the same version of dependencies. And the plugin must implement interfaces exported by Kuiper, so the Kuiper project must be in the gopath.
 
 
@@ -55,7 +55,7 @@ go build -trimpath --buildmode=plugin -o plugins/sources/MySource.so plugins/sou
 
 
 Notice that, the `-trimpath` build flag is required if using the prebuilte kuiper or kuiper docker image because the kuiperd is also built with the flag to improve build reproducibility.
 Notice that, the `-trimpath` build flag is required if using the prebuilte kuiper or kuiper docker image because the kuiperd is also built with the flag to improve build reproducibility.
 
 
-### Plugin development
+### 插件开发
 
 
 The development of plugins is to implement a specific interface according to the plugin type and export the implementation with a specific name. There are two types of exported symbol supported:
 The development of plugins is to implement a specific interface according to the plugin type and export the implementation with a specific name. There are two types of exported symbol supported:
 
 

+ 6 - 6
docs/zh_CN/operation/config/configuration_file.md

@@ -76,11 +76,11 @@ basic:
 
 
 所有插件列表如下:
 所有插件列表如下:
 
 
-|  插件类型        |        预构建插件列表                                             |
-|  -----------   |  ---------------------------------------------------------------|
-|  source        |    random zmq                                                   |
-|  sink          |  file image influx redis tdengine zmq                           |
-|  function      |  accumulateWordCount countPlusOne echo geohash image labelImage |
+| 插件类型     | 预构建插件列表                                                        |
+|----------|----------------------------------------------------------------|
+| source   | random zmq                                                     |
+| sink     | file image influx redis tdengine zmq                           |
+| function | accumulateWordCount countPlusOne echo geohash image labelImage |
 
 
 用户可以通过以下 Rest-API 获取所有预构建插件的名称和地址:
 用户可以通过以下 Rest-API 获取所有预构建插件的名称和地址:
 
 
@@ -127,7 +127,7 @@ GET http://localhost:9081/plugins/functions/prebuild
 * connectionSelector - 重用 etc/connections/connection.yaml 中定义的连接信息, 主要用在 edgex redis 配置了认证系统时
 * connectionSelector - 重用 etc/connections/connection.yaml 中定义的连接信息, 主要用在 edgex redis 配置了认证系统时
     * 只适用于 edgex redis 的连接信息 
     * 只适用于 edgex redis 的连接信息 
     * 连接信息中的 server, port 和 password 会覆盖以上定义的 host, port 和 password
     * 连接信息中的 server, port 和 password 会覆盖以上定义的 host, port 和 password
-    * [具体信息可参考](../../rules/sources/edgex.md#connectionselector)
+    * [具体信息可参考](../../rules/sources/builtin/edgex.md#connectionselector)
 
 
 
 
 ### 配置示例
 ### 配置示例

+ 1 - 1
docs/zh_CN/operation/manager-ui/overview.md

@@ -143,7 +143,7 @@
 
 
 ![newRule](./resources/new_rule.png)
 ![newRule](./resources/new_rule.png)
 
 
-单击「添加」按钮,弹出对话框如下所示。输入结果存储的文件路径为 `/kuiper/demoFile` 。更多关于 file 目标的信息可以查看[帮助文件](../../extension/native/sinks/file.md)。目标 file 处于 `Beta` 状态,不能作为实际生产环境使用。
+单击「添加」按钮,弹出对话框如下所示。输入结果存储的文件路径为 `/kuiper/demoFile` 。更多关于 file 目标的信息可以查看[帮助文件](../../rules/sinks/plugin/file.md)。目标 file 处于 `Beta` 状态,不能作为实际生产环境使用。
 
 
 ![sinkConf](./resources/sink_conf.png)
 ![sinkConf](./resources/sink_conf.png)
 
 

+ 5 - 5
docs/zh_CN/rules/overview.md

@@ -71,11 +71,11 @@
 
 
 当前,支持以下目标/动作:
 当前,支持以下目标/动作:
 
 
-- [log](./sinks/log.md): 将结果发送到日志文件。
-- [mqtt](./sinks/mqtt.md): 将结果发送到 MQTT 消息服务器。 
-- [edgex](./sinks/edgex.md): 将结果发送到 EdgeX 消息总线。
-- [rest](./sinks/rest.md): 将结果发送到 Rest HTTP 服务器。
-- [nop](./sinks/nop.md): 将结果发送到 nop 操作。
+- [log](./sinks/builtin/log.md): 将结果发送到日志文件。
+- [mqtt](./sinks/builtin/mqtt.md): 将结果发送到 MQTT 消息服务器。 
+- [edgex](./sinks/builtin/edgex.md): 将结果发送到 EdgeX 消息总线。
+- [rest](./sinks/builtin/rest.md): 将结果发送到 Rest HTTP 服务器。
+- [nop](./sinks/builtin/nop.md): 将结果发送到 nop 操作。
 
 
 每个动作可以定义自己的属性。当前有以下的公共属性:
 每个动作可以定义自己的属性。当前有以下的公共属性:
 
 

+ 1 - 1
docs/zh_CN/rules/rule_pipeline.md

@@ -1,6 +1,6 @@
 # 规则管道
 # 规则管道
 
 
-我们可以通过将先前规则的结果导入后续规则来形成规则管道。 这可以通过使用中间存储或 MQ(例如 mqtt 消息服务器)来实现。 通过同时使用 [内存源](./sources/memory.md) 和 [目标](./sinks/memory.md),我们可以创建没有外部依赖的规则管道。
+我们可以通过将先前规则的结果导入后续规则来形成规则管道。 这可以通过使用中间存储或 MQ(例如 mqtt 消息服务器)来实现。 通过同时使用 [内存源](./sources/builtin/memory.md) 和 [目标](./sinks/builtin/memory.md),我们可以创建没有外部依赖的规则管道。
 
 
 ## 使用
 ## 使用
 
 

+ 23 - 23
docs/zh_CN/sqls/streams.md

@@ -8,16 +8,16 @@
 
 
 以下是支持的数据类型的列表。
 以下是支持的数据类型的列表。
 
 
-| #    | 数据类型 | 说明                                                   |
-| ---- | -------- | ------------------------------------------------------ |
-| 1    | bigint   |                                                        |
-| 2    | float    |                                                        |
-| 3    | string   |                                                        |
-| 4    | datetime |                                                  |
-| 5    | boolean  |                                                        |
-| 6    | bytea   |  用于存储二进制数据的字节数组。如果在格式为 "JSON" 的流中使用此类型,则传入的数据需要为 base64 编码的字符串。 |
-| 7    | array    | 数组类型可以是任何简单类型,数组类型或结构类型。 |
-| 8    | struct   | 复杂类型                                               |
+| #   | 数据类型     | 说明                                                             |
+|-----|----------|----------------------------------------------------------------|
+| 1   | bigint   |                                                                |
+| 2   | float    |                                                                |
+| 3   | string   |                                                                |
+| 4   | datetime |                                                                |
+| 5   | boolean  |                                                                |
+| 6   | bytea    | 用于存储二进制数据的字节数组。如果在格式为 "JSON" 的流中使用此类型,则传入的数据需要为 base64 编码的字符串。 |
+| 7   | array    | 数组类型可以是任何简单类型,数组类型或结构类型。                                       |
+| 8   | struct   | 复杂类型                                                           |
 
 
 ## 语言定义
 ## 语言定义
 
 
@@ -30,17 +30,17 @@ CREATE STREAM
 
 
 **支持的属性名称**
 **支持的属性名称**
 
 
-| 属性名称 | 可选 | 说明                                              |
-| ------------- | -------- | ------------------------------------------------------------ |
-| DATASOURCE | 否   | 取决于不同的源类型;如果是 MQTT 源,则为 MQTT 数据源主题名;其它源请参考相关的文档。 |
-| FORMAT        | 是      | 传入的数据类型,支持 "JSON" 和 "BINARY",默认为 "JSON" 。关于 "BINARY" 类型的更多信息,请参阅 [Binary Stream](#二进制流)。 |
-| KEY           | 是    | 保留配置,当前未使用该字段。 它将用于 GROUP BY 语句。 |
-| TYPE    | 是      | 源类型,如未指定,值为 "mqtt"。 |
-| StrictValidation     | 是  | 针对流模式控制消息字段的验证行为。 有关更多信息,请参见 [Strict Validation](#Strict Validation) |
-| CONF_KEY | 是 | 如果需要配置其他配置项,请在此处指定 config 键。 有关更多信息,请参见 [MQTT stream](../rules/sources/mqtt.md) 。 |
-| SHARED | 是 | 是否在使用该流的规则中共享源的实例 |
-| TIMESTAMP | 是 | 代表该事件时间戳的字段名。如果有设置,则使用此流的规则将采用事件时间;否则将采用处理时间。详情请看[时间戳管理](./windows.md#时间戳管理)。 |
-| TIMESTAMP_FORMAT | 是 | 字符串和时间格式转换时使用的默认格式。 |
+| 属性名称             | 可选  | 说明                                                                                        |
+|------------------|-----|-------------------------------------------------------------------------------------------|
+| DATASOURCE       | 否   | 取决于不同的源类型;如果是 MQTT 源,则为 MQTT 数据源主题名;其它源请参考相关的文档。                                          |
+| FORMAT           | 是   | 传入的数据类型,支持 "JSON" 和 "BINARY",默认为 "JSON" 。关于 "BINARY" 类型的更多信息,请参阅 [Binary Stream](#二进制流)。  |
+| KEY              | 是   | 保留配置,当前未使用该字段。 它将用于 GROUP BY 语句。                                                          |
+| TYPE             | 是   | 源类型,如未指定,值为 "mqtt"。                                                                       |
+| StrictValidation | 是   | 针对流模式控制消息字段的验证行为。 有关更多信息,请参见 [Strict Validation](#Strict Validation)                      |
+| CONF_KEY         | 是   | 如果需要配置其他配置项,请在此处指定 config 键。 有关更多信息,请参见 [MQTT stream](../rules/sources/builtin/mqtt.md) 。 |
+| SHARED           | 是   | 是否在使用该流的规则中共享源的实例                                                                         |
+| TIMESTAMP        | 是   | 代表该事件时间戳的字段名。如果有设置,则使用此流的规则将采用事件时间;否则将采用处理时间。详情请看[时间戳管理](./windows.md#时间戳管理)。             |
+| TIMESTAMP_FORMAT | 是   | 字符串和时间格式转换时使用的默认格式。                                                                       |
 
 
 **示例1**
 **示例1**
 
 
@@ -52,7 +52,7 @@ WITH ( datasource = "topic/temperature", FORMAT = "json", KEY = "id");
 
 
 该流将订阅 MQTT 主题`topic/temperature`,服务器连接使用配置文件`$ekuiper/etc/mqtt_source.yaml` 中默认部分的 server 键。
 该流将订阅 MQTT 主题`topic/temperature`,服务器连接使用配置文件`$ekuiper/etc/mqtt_source.yaml` 中默认部分的 server 键。
 
 
-- 有关更多信息,请参见 [MQTT source](../rules/sources/mqtt.md) 
+- 有关更多信息,请参见 [MQTT source](../rules/sources/builtin/mqtt.md) 
 
 
 **示例2**
 **示例2**
 
 
@@ -69,7 +69,7 @@ demo (
 
 
  流将订阅 MQTT 主题 `test/`,服务器连接使用配置文件`$ekuiper/etc/mqtt_source.yaml` 中 demo 部分的设置。
  流将订阅 MQTT 主题 `test/`,服务器连接使用配置文件`$ekuiper/etc/mqtt_source.yaml` 中 demo 部分的设置。
 
 
-- 有关更多信息,请参见 [MQTT source](../rules/sources/mqtt.md) 
+- 有关更多信息,请参见 [MQTT source](../rules/sources/builtin/mqtt.md) 
 
 
 - 有关规则和流管理的更多信息,请参见 [规则和流 CLI docs](../operation/cli/overview.md) 
 - 有关规则和流管理的更多信息,请参见 [规则和流 CLI docs](../operation/cli/overview.md)