Merge pull request #27144 from taosdata/docs/sheyj-3.0
improve tdinsight doc
This commit is contained in:
commit
6586a8b86e
|
@ -88,7 +88,7 @@ For more details about `INSERT` please refer to [INSERT](../../../taos-sql/inser
|
|||
<TabItem label="Rust" value="rust">
|
||||
<RustSQL />
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="nodejs">
|
||||
<TabItem label="Node.js" value="node">
|
||||
<NodeSQL />
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
|
@ -128,7 +128,7 @@ Parameter binding is available only with native connection.
|
|||
<TabItem label="Rust" value="rust">
|
||||
<RustStmt />
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="nodejs">
|
||||
<TabItem label="Node.js" value="node">
|
||||
<NodeStmt />
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
|
|
|
@ -60,7 +60,7 @@ For more details please refer to [InfluxDB Line Protocol](https://docs.influxdat
|
|||
<TabItem label="Go" value="go">
|
||||
<GoLine />
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="nodejs">
|
||||
<TabItem label="Node.js" value="node">
|
||||
<NodeLine />
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
|
|
|
@ -52,7 +52,7 @@ meters.current 1648432611250 11.3 location=California.LosAngeles groupid=3
|
|||
<TabItem label="Go" value="go">
|
||||
<GoTelnet />
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="nodejs">
|
||||
<TabItem label="Node.js" value="node">
|
||||
<NodeTelnet />
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
|
|
|
@ -67,7 +67,7 @@ Please refer to [OpenTSDB HTTP API](http://opentsdb.net/docs/build/html/api_http
|
|||
<TabItem label="Go" value="go">
|
||||
<GoJson />
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="nodejs">
|
||||
<TabItem label="Node.js" value="node">
|
||||
<NodeJson />
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
|
|
|
@ -142,7 +142,7 @@ In the section describing [Insert](../insert-data/sql-writing), a database named
|
|||
<TabItem label="Rust" value="rust">
|
||||
<RustQuery />
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="nodejs">
|
||||
<TabItem label="Node.js" value="node">
|
||||
<NodeQuery />
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
|
|
|
@ -40,21 +40,21 @@ taosKeeper 的配置文件默认位于 `/etc/taos/taoskeeper.toml`。 详细配
|
|||
|
||||
#### 导入仪表盘
|
||||
|
||||
TDengine 数据源插件已被提交至 Grafana 官网,完成插件的安装和数据源的创建后,可以进行 TDinsight 仪表盘的导入。
|
||||
TDengine 数据源插件已提交至 Grafana 官网,如何安装 TDengine 数据源插件和配置数据源请参考:[安装 Grafana Plugin 并配置数据源](../../third-party/visual/grafana/#安装-grafana-plugin-并配置数据源)。完成插件的安装和数据源的创建后,可以进行 TDinsight 仪表盘的导入。
|
||||
|
||||
在 Grafana 的 ”Home“ -> ”Dashboards“ 页面,点击位于右上角的 ”New“ -> ”import“ 按钮,即可进入 Dashboard 的导入页面,它支持以下两种导入方式。
|
||||
在 Grafana 的 “Home” -> “Dashboards” 页面,点击位于右上角的 “New” -> “import” 按钮,即可进入 Dashboard 的导入页面,它支持以下两种导入方式。
|
||||
- Dashboard ID:18180。
|
||||
- Dashboard URL:https://grafana.com/grafana/dashboards/18180-tdinsight-for-3-x/
|
||||
|
||||
填写以上 Dashboard ID 或 Dashboard URL 以后,点击 ”Load“ 按钮,按照向导操作,即可完成导入。导入成功后,Dashboards 列表页面会出现 ”TDinsight for 3.x“ 仪表盘,点击进入后,就可以看到 TDinsight 中已创建的各个指标的面板,如下图所示:
|
||||
填写以上 Dashboard ID 或 Dashboard URL 以后,点击 “Load” 按钮,按照向导操作,即可完成导入。导入成功后,Dashboards 列表页面会出现 “TDinsight for 3.x” 仪表盘,点击进入后,就可以看到 TDinsight 中已创建的各个指标的面板,如下图所示:
|
||||
|
||||

|
||||
|
||||
**注意** 在 TDinsight 界面左上角的 ”Log from“ 下拉列表中可以选择 `log` 数据库。
|
||||
**注意** 在 TDinsight 界面左上角的 “Log from” 下拉列表中可以选择 `log` 数据库。
|
||||
|
||||
### TDengine V3 监控数据
|
||||
|
||||
TDinsight dashboard 数据来源于 `log` 库(存放监控数据的默认数据库,可以在 taoskeeper 配置文件中修改)。”TDinsight for 3.x“ 仪表盘查询了 taosd 和 TaosAdapter 的监控指标。
|
||||
TDinsight dashboard 数据来源于 `log` 库(存放监控数据的默认数据库,可以在 taoskeeper 配置文件中修改)。“TDinsight for 3.x” 仪表盘查询了 taosd 和 TaosAdapter 的监控指标。
|
||||
- taosd 的监控指标请参考 [taosd 监控指标](../../reference/components/taosd/#taosd-监控指标)
|
||||
- taosAdapter 的监控指标请参考 [taosAdapter 监控指标](../../reference/components/taosadapter/#taosadapter-监控指标)
|
||||
|
||||
|
@ -66,18 +66,15 @@ taosX 是 TDengine 中提供零代码数据接入能力的核心组件,对它
|
|||
3. 运行在 taosX 端或 taosx-agent 端的各个连接器子进程
|
||||
4. 运行中的各类数据写入任务
|
||||
|
||||
### 版本支持
|
||||
### 前置条件
|
||||
|
||||
1. TDengine 企业版本 3.2.3.0 或以上版本包含的 taosX 才包含此功能。如果单独安装 taosX,需要 taosX 1.5.0 或以上版本。
|
||||
2. 需要安装 Grafana 插件 [TDengie Datasource v3.5.0](https://grafana.com/grafana/plugins/tdengine-datasource/) 或以上版本。
|
||||
1. taosd,taosAdapter 和 taosKeeper 都已经部署完成并启动成功。
|
||||
2. taosX 服务监控配置正确,如何配置可以参考下文 “配置 taosX 监控”,服务启动成功。
|
||||
**注意**:TDengine 企业版本 3.2.3.0 或以上版本包含的 taosX 才包含此功能。如果单独安装 taosX,需要 taosX 1.5.0 或以上版本。
|
||||
3. 部署 Grafana ,安装 TDengine Datasource 插件,配置好数据源。可以参考:[安装 Grafana Plugin 并配置数据源](../../third-party/visual/grafana/#安装-grafana-plugin-并配置数据源)。
|
||||
**注意**:需要安装 Grafana 插件 [TDengie Datasource v3.5.0](https://grafana.com/grafana/plugins/tdengine-datasource/) 或以上版本。
|
||||
|
||||
### 准备工作
|
||||
|
||||
假设你已经部署好了 taosd,taosAdapter 和 taosAdapter。 那么还需要:
|
||||
1. 启动 taosX 服务。
|
||||
2. 部署 Grafana ,安装 TDengine Datasource 插件,配置好数据源。
|
||||
|
||||
### 配置 taosX
|
||||
### 配置 taosX 监控
|
||||
|
||||
toasX 的配置文件(默认 /etc/taos/taosx.toml) 中与 monitor 相关的配置如下:
|
||||
|
||||
|
@ -101,12 +98,12 @@ toasX 的配置文件(默认 /etc/taos/taosx.toml) 中与 monitor 相关的配
|
|||
|
||||
### 基于 TDinsight 监控 tasoX
|
||||
|
||||
"TDinsight for taosX" 是专门为 taosX 监控创建的 Grafana 面板。使用前需要先导入这个面板。
|
||||
“TDinsight for taosX” 是专门为 taosX 监控创建的 Grafana 面板。使用前需要先导入这个面板。
|
||||
|
||||
#### 进入面板
|
||||
|
||||
1. 在 Grafana 界面菜单中点击 ”Data sources“, 然后选择已经配置好的 TDengine 数据源。
|
||||
2. 在数据源配置界面选择 “Dashboard” Tab, 然后导入 ”TDinsight for taosX“ 面板(第一次使用需要先导入)。 下面是一个示例图:
|
||||
1. 在 Grafana 界面菜单中点击 “Data sources”, 然后选择已经配置好的 TDengine 数据源。
|
||||
2. 在数据源配置界面选择 “Dashboard” Tab, 然后导入 “TDinsight for taosX” 面板(第一次使用需要先导入)。 下面是一个示例图:
|
||||
|
||||

|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ import VerifyLinux from "../../14-reference/05-connector/_verify_linux.mdx";
|
|||
import VerifyMacOS from "../../14-reference/05-connector/_verify_macos.mdx";
|
||||
import VerifyWindows from "../../14-reference/05-connector/_verify_windows.mdx";
|
||||
|
||||
TDengine 提供了丰富的应用程序开发接口,为了便于用户快速开发自己的应用,TDengine 支持了多种编程语言的连接器,其中官方连接器包括支持 C/C++、Java、Python、Go、Node.js、C#、Rust、Lua(社区贡献)和 PHP (社区贡献)的连接器。这些连接器支持使用原生接口(taosc)和 REST 接口(部分语言暂不支持)连接 TDengine 集群。社区开发者也贡献了多个非官方连接器,例如 ADO.NET 连接器、Lua 连接器和 PHP 连接器。
|
||||
TDengine 提供了丰富的应用程序开发接口,为了便于用户快速开发自己的应用,TDengine 支持了多种编程语言的连接器,其中官方连接器包括支持 C/C++、Java、Python、Go、Node.js、C#、Rust、Lua(社区贡献)和 PHP (社区贡献)的连接器。这些连接器支持使用原生接口(taosc)和 REST 接口(部分语言暂不支持)连接 TDengine 集群。社区开发者也贡献了多个非官方连接器,例如 ADO.NET 连接器、Lua 连接器和 PHP 连接器。另外 TDengine 还可以直接调用 taosadapter 提供的 REST API 接口,进行数据写入和查询操作。
|
||||
|
||||
## 连接方式
|
||||
|
||||
|
@ -33,6 +33,7 @@ TDengine 提供了丰富的应用程序开发接口,为了便于用户快速
|
|||

|
||||
|
||||
无论使用何种方式建立连接,连接器都提供了相同或相似的 API 操作数据库,都可以执行 SQL 语句,只是初始化连接的方式稍有不同,用户在使用上不会感到什么差别。
|
||||
各种连接方式和各语言连接器支持情况请参考:[连接器功能特性](../../reference/connector/#功能特性)
|
||||
|
||||
关键不同点在于:
|
||||
|
||||
|
@ -251,7 +252,10 @@ dotnet add package TDengine.Connector
|
|||
<TabItem label="C" value="c">
|
||||
|
||||
如果已经安装了 TDengine 服务端软件或 TDengine 客户端驱动 taosc, 那么已经安装了 C 连接器,无需额外操作。
|
||||
<br/>
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
使用 REST API 方式访问 TDengine,无需安装任何驱动和连接器。
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
@ -394,7 +398,10 @@ C/C++ 语言连接器使用 `taos_connect()` 函数用于建立与 TDengine 数
|
|||
还提供了 `taos_connect_auth()` 函数用于使用 MD5 加密的密码建立与 TDengine 数据库的连接。此函数与 `taos_connect` 功能相同,不同之处在于密码的处理方式,`taos_connect_auth` 需要的是密码的 MD5 加密字符串。
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
使用 REST API 方式访问 TDengine,由应用程序去建立 HTTP 连接,自己控制 HTTP 连接参数。
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### Websocket 连接
|
||||
|
@ -431,6 +438,13 @@ C/C++ 语言连接器使用 `taos_connect()` 函数用于建立与 TDengine 数
|
|||
{{#include docs/examples/csharp/wsConnect/Program.cs:main}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### 原生连接
|
||||
|
@ -455,6 +469,9 @@ C/C++ 语言连接器使用 `taos_connect()` 函数用于建立与 TDengine 数
|
|||
{{#include docs/examples/rust/nativeexample/examples/connect.rs}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
```csharp
|
||||
{{#include docs/examples/csharp/connect/Program.cs:main}}
|
||||
|
@ -464,6 +481,10 @@ C/C++ 语言连接器使用 `taos_connect()` 函数用于建立与 TDengine 数
|
|||
<ConnC />
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### REST 连接
|
||||
|
@ -485,6 +506,23 @@ C/C++ 语言连接器使用 `taos_connect()` 函数用于建立与 TDengine 数
|
|||
{{#include docs/examples/go/connect/restexample/main.go}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="Rust" value="rust">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="REST API" value="rest">
|
||||
使用 REST API 方式访问 TDengine,由应用程序自主去建立 HTTP 连接。
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
|
||||
|
|
|
@ -57,7 +57,7 @@ REST API:直接调用 `taosadapter` 提供的 REST API 接口,进行数据
|
|||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node.js">
|
||||
<TabItem label="Node.js" value="node">
|
||||
```js
|
||||
{{#include docs/examples/node/websocketexample/sql_example.js:create_db_and_table}}
|
||||
```
|
||||
|
@ -133,7 +133,7 @@ NOW 为系统内部函数,默认为客户端所在计算机当前时间。 NOW
|
|||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node.js">
|
||||
<TabItem label="Node.js" value="node">
|
||||
```js
|
||||
{{#include docs/examples/node/websocketexample/sql_example.js:insertData}}
|
||||
```
|
||||
|
@ -207,7 +207,7 @@ rust 连接器还支持使用 **serde** 进行反序列化行为结构体的结
|
|||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node.js">
|
||||
<TabItem label="Node.js" value="node">
|
||||
```js
|
||||
{{#include docs/examples/node/websocketexample/sql_example.js:queryData}}
|
||||
```
|
||||
|
@ -282,7 +282,7 @@ reqId 可用于请求链路追踪,reqId 就像分布式系统中的 traceId
|
|||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node.js">
|
||||
<TabItem label="Node.js" value="node">
|
||||
```js
|
||||
{{#include docs/examples/node/websocketexample/sql_example.js:sqlWithReqid}}
|
||||
```
|
||||
|
|
|
@ -194,7 +194,7 @@ writer.write(lineDemo, SchemalessProtocolType.LINE, SchemalessTimestampType.NANO
|
|||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node.js">
|
||||
<TabItem label="Node.js" value="node">
|
||||
```js
|
||||
{{#include docs/examples/node/websocketexample/line_example.js}}
|
||||
```
|
||||
|
@ -204,6 +204,12 @@ writer.write(lineDemo, SchemalessProtocolType.LINE, SchemalessTimestampType.NANO
|
|||
{{#include docs/examples/csharp/wssml/Program.cs:main}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### 原生连接
|
||||
|
@ -237,7 +243,9 @@ writer.write(lineDemo, SchemalessProtocolType.LINE, SchemalessTimestampType.NANO
|
|||
{{#include docs/examples/rust/nativeexample/examples/schemaless.rs}}
|
||||
```
|
||||
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
```csharp
|
||||
|
@ -249,7 +257,9 @@ writer.write(lineDemo, SchemalessProtocolType.LINE, SchemalessTimestampType.NANO
|
|||
{{#include docs/examples/c/sml_insert_demo.c:schemaless}}
|
||||
```
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## 查询写入的数据
|
||||
|
|
|
@ -63,6 +63,12 @@ import TabItem from "@theme/TabItem";
|
|||
{{#include docs/examples/csharp/wsStmt/Program.cs:main}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## 原生连接
|
||||
|
@ -93,6 +99,9 @@ import TabItem from "@theme/TabItem";
|
|||
{{#include docs/examples/rust/nativeexample/examples/stmt.rs}}
|
||||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
```csharp
|
||||
|
@ -104,5 +113,7 @@ import TabItem from "@theme/TabItem";
|
|||
{{#include docs/examples/c/stmt_insert_demo.c}}
|
||||
```
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
|
|
@ -96,6 +96,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
同通用基础配置项。
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### Websocket 连接
|
||||
|
@ -148,6 +151,12 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
{{#include docs/examples/csharp/wssubscribe/Program.cs:create_consumer}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
|
||||
|
@ -187,7 +196,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
```
|
||||
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
```csharp
|
||||
{{#include docs/examples/csharp/subscribe/Program.cs:create_consumer}}
|
||||
|
@ -206,7 +217,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
|
||||
调用 `build_consumer` 函数尝试获取消费者实例 `tmq`。成功则打印成功日志,失败则打印失败日志。
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## 订阅消费数据
|
||||
|
@ -267,7 +280,12 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
{{#include docs/examples/csharp/wssubscribe/Program.cs:subscribe}}
|
||||
```
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### 原生连接
|
||||
|
@ -311,7 +329,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
- `Record` 是我们自定义的一个结构体,其字段名和数据类型与列的名称和数据类型一一对应,这样可以通过 `serde` 反序列化出 `Record` 类型的对象。
|
||||
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
```csharp
|
||||
{{#include docs/examples/csharp/subscribe/Program.cs:subscribe}}
|
||||
|
@ -343,7 +363,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
5. 调用 `basic_consume_loop` 函数开始基本的消费循环,处理订阅的消息。
|
||||
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## 指定订阅的 Offset
|
||||
|
@ -402,6 +424,12 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
{{#include docs/examples/csharp/wssubscribe/Program.cs:seek}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### 原生连接
|
||||
|
@ -445,7 +473,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
2. 在所有分区的偏移量调整完成后,再次获取并记录消费者的分区分配信息,以确认偏移量调整后的状态。
|
||||
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
```csharp
|
||||
{{#include docs/examples/csharp/subscribe/Program.cs:seek}}
|
||||
|
@ -465,6 +495,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
6. 调用 `basic_consume_loop` 函数开始新的的消费循环,处理消息。
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
|
||||
|
@ -518,6 +551,12 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
{{#include docs/examples/csharp/wssubscribe/Program.cs:commit_offset}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### 原生连接
|
||||
|
@ -551,7 +590,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
|
||||
可以通过 `consumer.commit` 方法来手工提交消费进度。
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
```csharp
|
||||
{{#include docs/examples/csharp/subscribe/Program.cs:commit_offset}}
|
||||
|
@ -566,6 +607,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
可以通过 `tmq_commit_sync` 函数来手工提交消费进度。
|
||||
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
|
||||
|
@ -615,6 +659,12 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
{{#include docs/examples/csharp/wssubscribe/Program.cs:close}}
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### 原生连接
|
||||
|
@ -646,7 +696,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
|
||||
**注意**:消费者取消订阅后无法重用,如果想订阅新的 `topic`, 请重新创建消费者。
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
```csharp
|
||||
{{#include docs/examples/csharp/subscribe/Program.cs:close}}
|
||||
|
@ -658,7 +710,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
{{#include docs/examples/c/tmq_demo.c:unsubscribe_and_close}}
|
||||
```
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
|
||||
|
@ -720,7 +774,12 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
```
|
||||
</details>
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="C" value="c">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### 原生连接
|
||||
|
@ -765,7 +824,9 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
```
|
||||
</details>
|
||||
</TabItem>
|
||||
|
||||
<TabItem label="Node.js" value="node">
|
||||
不支持
|
||||
</TabItem>
|
||||
<TabItem label="C#" value="csharp">
|
||||
<details>
|
||||
<summary>完整代码示例</summary>
|
||||
|
@ -783,4 +844,7 @@ Rust 连接器创建消费者的参数为 DSN, 可以设置的参数列表请
|
|||
```
|
||||
</details>
|
||||
</TabItem>
|
||||
<TabItem label="REST API" value="rest">
|
||||
不支持
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
|
|
@ -32,76 +32,8 @@ TDengine 通过 taosKeeper 将服务器的 CPU、内存、硬盘空间、带宽
|
|||
|
||||
|
||||
|
||||
## 安装 TDengine 数据源插件
|
||||
|
||||
TDengine 数据源插件支持图形界面安装、手动安装和脚本安装三种安装方式,一般建议图形界面安装。对于 Grafana 8.5 以下版本可以使用手动安装和脚本安装方式。
|
||||
|
||||
<Tabs defaultValue="manual" groupId="deploy">
|
||||
<TabItem value="gui" label="图形界面安装">
|
||||
|
||||
使用 Grafana 最新版本(8.5+),您可以在 Grafana 中[浏览和管理插件](https://grafana.com/docs/grafana/next/administration/plugin-management/#plugin-catalog)。在 Grafana 管理界面中的 **Configurations > Plugins** 页面直接搜索 `TDengine` 并按照提示安装。
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="manual" label="手动安装">
|
||||
|
||||
从 GitHub 安装 TDengine 最新版数据源插件。
|
||||
|
||||
```bash
|
||||
get_latest_release() {
|
||||
curl --silent "https://api.github.com/repos/taosdata/grafanaplugin/releases/latest" |
|
||||
grep '"tag_name":' |
|
||||
sed -E 's/.*"v([^"]+)".*/\1/'
|
||||
}
|
||||
TDENGINE_PLUGIN_VERSION=$(get_latest_release)
|
||||
sudo grafana-cli \
|
||||
--pluginUrl https://github.com/taosdata/grafanaplugin/releases/download/v$TDENGINE_PLUGIN_VERSION/tdengine-datasource-$TDENGINE_PLUGIN_VERSION.zip \
|
||||
plugins install tdengine-datasource
|
||||
```
|
||||
|
||||
:::note
|
||||
3.1.6 和更早版本插件需要在配置文件 `/etc/grafana/grafana.ini` 中添加如下设置,以启用未签名插件。
|
||||
|
||||
```ini
|
||||
[plugins]
|
||||
allow_loading_unsigned_plugins = tdengine-datasource
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
</TabItem>
|
||||
|
||||
<TabItem value="auto" label="脚本安装">
|
||||
|
||||
我们提供了一个自动化安装脚本 [TDinsight.sh](https://github.com/taosdata/grafanaplugin/releases/latest/download/TDinsight.sh) 脚本以便用户快速进行安装配置。
|
||||
|
||||
您可以通过 `wget` 或其他工具下载该脚本:
|
||||
|
||||
```bash
|
||||
wget https://github.com/taosdata/grafanaplugin/releases/latest/download/TDinsight.sh
|
||||
chmod +x TDinsight.sh
|
||||
./TDinsight.sh
|
||||
```
|
||||
|
||||
这个脚本会自动下载最新的[Grafana TDengine 数据源插件](https://github.com/taosdata/grafanaplugin/releases/latest) 和 [TDinsight 仪表盘](https://github.com/taosdata/grafanaplugin/blob/master/dashboards/TDinsightV3.json) ,将命令行选项中的可配置参数转为 [Grafana Provisioning](https://grafana.com/docs/grafana/latest/administration/provisioning/) 配置文件,以进行自动化部署及更新等操作。
|
||||
|
||||
1. 假设您在同一台主机上使用 TDengine 和 Grafana 服务。 运行 `./TDinsight.sh` 并打开 Grafana 页面就可以看到 TDinsight 仪表盘了。
|
||||
2. 假设您在主机 `tdengine` 上启动 TDengine 数据库,taosAdapter 的 HTTP 监听端口为 `6041`,用户为 `root1`,密码为 `pass5ord`。执行脚本:`./TDinsight.sh -a http://tdengine:6041 -u root1 -p pass5ord`
|
||||
|
||||
详细的使用方法请参考 [TDinsight.sh 详细说明](./#附录)
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
|
||||
## 添加 TDengine 数据源
|
||||
|
||||
安装完毕后, 点击 “Connections” -> “Data sources“, 然后选择 ”tdengine-datasource“,输入 TDengine 相关配置:
|
||||
- Host: TDengine 集群中提供 REST 服务的 IP 地址与端口号,默认 `http://localhost:6041`
|
||||
- User:TDengine 用户名。
|
||||
- Password:TDengine 用户密码。
|
||||
|
||||
点击 `Save & Test` 进行测试,成功会提示:`TDengine Data source is working`。
|
||||
|
||||
## 安装 TDengine 数据源插件和配置数据源
|
||||
安装 Grafana TDengine 数据源插件和配置数据源的步骤请参考:[与 Grafana 集成](../../../third-party/visual/grafana/#安装-grafana-plugin-并配置数据源)
|
||||
|
||||
## 导入 TDinsightV3 仪表盘
|
||||
|
||||
|
|
|
@ -46,10 +46,10 @@ TDengine 版本更新往往会增加新的功能特性,列表中的连接器
|
|||
| **功能特性** | **Java** | **Python** | **Go** | **C#** | **Rust** |
|
||||
| ------------------- | -------- | ---------- | ------ | ------ | -------- |
|
||||
| **连接管理** | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **普通查询** | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **执行 SQL** | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **参数绑定** | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **数据订阅(TMQ)** | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **Schemaless** | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **无模式写入** | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
|
||||
:::info
|
||||
由于不同编程语言数据库框架规范不同,并不意味着所有 C/C++ 接口都需要对应封装支持。
|
||||
|
@ -57,20 +57,20 @@ TDengine 版本更新往往会增加新的功能特性,列表中的连接器
|
|||
|
||||
### 使用 http REST 接口
|
||||
|
||||
| **功能特性** | **Java** | **Python** | **Go** | **C#** |
|
||||
| ------------ | -------- | ---------- | ------ | ------ |
|
||||
| **连接管理** | 支持 | 支持 | 支持 | 支持 |
|
||||
| **普通查询** | 支持 | 支持 | 支持 | 支持 |
|
||||
| **功能特性** | **Java** | **Python** | **Go** |
|
||||
| ------------ | -------- | ---------- | ------ |
|
||||
| **连接管理** | 支持 | 支持 | 支持 |
|
||||
| **执行 SQL** | 支持 | 支持 | 支持 |
|
||||
|
||||
### 使用 Websocket 接口
|
||||
|
||||
| **功能特性** | **Java** | **Python** | **Go** | **C#** | **Node.js** | **Rust** |
|
||||
| ------------------- | -------- | ---------- | ------ | ------ | ----------- | -------- |
|
||||
| **连接管理** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **普通查询** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **执行 SQL** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **参数绑定** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **数据订阅(TMQ)** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **Schemaless** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
| **无模式写入** | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
|
||||
|
||||
:::warning
|
||||
- 无论选用何种编程语言的连接器,2.0 及以上版本的 TDengine 推荐数据库应用的每个线程都建立一个独立的连接,或基于线程建立连接池,以避免连接内的“USE statement”状态量在线程之间相互干扰(但连接的查询和写入操作都是线程安全的)。
|
||||
|
@ -128,4 +128,4 @@ import DocCardList from '@theme/DocCardList';
|
|||
import {useCurrentSidebarCategory} from '@docusaurus/theme-common';
|
||||
|
||||
<DocCardList items={useCurrentSidebarCategory().items}/>
|
||||
```
|
||||
```
|
||||
|
|
|
@ -18,12 +18,8 @@ import TabItem from "@theme/TabItem";
|
|||
|
||||
要让 Grafana 能正常添加 TDengine 数据源,需要以下几方面的准备工作。
|
||||
|
||||
- Grafana 服务已经部署并正常运行。
|
||||
:::info
|
||||
|
||||
- Grafana 服务已经部署并正常运行。
|
||||
**注意**:要确保启动 Grafana 的账号有其安装目录的写权限,否则可能后面无法安装插件。
|
||||
|
||||
:::
|
||||
- TDengine 集群已经部署并正常运行。
|
||||
- taosAdapter 已经安装并正常运行。具体细节请参考 [taosAdapter 的使用手册](../../../reference/components/taosadapter)
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@ spring.datasource.druid.max-active=5
|
|||
# max wait time for get connection, ms
|
||||
spring.datasource.druid.max-wait=60000
|
||||
|
||||
spring.datasource.druid.validation-query=select server_status();
|
||||
spring.datasource.druid.validation-query=select SERVER_VERSION();
|
||||
spring.datasource.druid.validation-query-timeout=5000
|
||||
spring.datasource.druid.test-on-borrow=false
|
||||
spring.datasource.druid.test-on-return=false
|
||||
|
|
|
@ -12,7 +12,7 @@ spring.datasource.druid.initial-size=5
|
|||
spring.datasource.druid.min-idle=5
|
||||
spring.datasource.druid.max-active=5
|
||||
spring.datasource.druid.max-wait=30000
|
||||
spring.datasource.druid.validation-query=select server_status();
|
||||
spring.datasource.druid.validation-query=select SERVER_VERSION();
|
||||
spring.aop.auto=true
|
||||
spring.aop.proxy-target-class=true
|
||||
#mybatis
|
||||
|
|
Loading…
Reference in New Issue