# 服务管理

eKuiper 命令行工具允许您管理服务,例如创建、显示、删除、描述服务。

# 注册服务

该命令用于创建服务。服务的定义以 JSON 格式指定

create service $service_name $service_json
1

首先要准备打包好的服务描述信息,放在 eKuiper 可以访问的地方

示例:

# bin/kuiper create service sample '{"name": "sample","file": "file:///tmp/sample.zip"}'
1

这个命令创建了一个名为 sample 的服务,该服务的具体描述信息放在了 file 路径指定的地方。

# 查看服务和服务函数

此命令查看 eKuiper 系统中注册的所有服务

# bin/kuiper show services
1

此命令查看 eKuiper 系统中注册的所有服务函数

# bin/kuiper show service_funcs
1

# 查看服务的详细信息

此命令可以查看服务的详细信息

describe service $service_name
1

示例:

# bin/kuiper describe service sample
{
  "About": {
    "author": {
      "name": "EMQ",
      "email": "contact@emqx.io",
      "company": "EMQ Technologies Co., Ltd",
      "website": "https://www.emqx.io"
    },
    "helpUrl": {
      "en_US": "https://github.com/lf-edge/ekuiper/blob/master/docs/en_US/plugins/functions/functions.md",
      "zh_CN": "https://github.com/lf-edge/ekuiper/blob/master/docs/zh_CN/plugins/functions/functions.md"
    },
    "description": {
      "en_US": "Sample external services for test only",
      "zh_CN": "示例外部函数配置,仅供测试"
    }
  },
  "Interfaces": {
    "trueno": {
      "Desc": null,
      "Addr": "tcp://localhost:50051",
      "Protocol": "grpc",
      "Schema": {
        "SchemaType": "protobuf",
        "SchemaFile": "sample.proto"
      },
      "Functions": [
        "label"
      ],
      "Options": null
    }
  }
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

# 描述服务函数详细信息

此命令可以列出服务函数详细信息

describe service_func $service_name
1

示例:

# bin/kuiper describe service_func label
{
  "ServiceName": "sample",
  "InterfaceName": "trueno",
  "MethodName": "label"
}
1
2
3
4
5
6

# 删除服务

此命令可以删除服务

drop service $service_name
1

示例:

# bin/kuiper drop service sample
1