更新时间:2025-08-30 GMT+08:00
分享

创建管道

功能介绍

创建管道

调用方法

请参见如何调用API

URI

POST /v2/{project_id}/workspaces/{workspace_id}/siem/pipes

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

项目ID,用于明确项目归属,配置后可通过该ID查询项目下资产,可以通过调用API获取,也可以从控制台获取。获取项目ID

约束限制:

不涉及

取值范围:

不涉及w

默认取值:

不涉及

workspace_id

String

工作空间ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。获取用户Token

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

pipe_name

String

Pipe name

pipe_alias

String

Pipe alias

category

String

参数解释:

管道目录

  • STREAMING_TO_INDEX 流式写入索引

  • STREAMING_TO_LAKE 流式写入数据湖

  • STREAMING_TO_INDEX_LAKE 流式写入索引和数据湖

  • STREAMING 流式传输中

约束限制

不涉及

取值范围:

  • STREAMING_TO_INDEX

  • STREAMING_TO_LAKE

  • STREAMING_TO_INDEX_LAKE

  • STREAMING

默认值

不涉及

directory

String

directory 目录分组

description

String

Pipe description

schema

PipeSchema object

管道模式

storage_setting

PipeStorageSetting object

管道存储设置

display_setting

TableDisplaySetting object

表展示设置

表4 PipeSchema

参数

是否必选

参数类型

描述

columns

Array of TableColumnForIsapPipe objects

管道列

watermark_column

String

Pipe watermark column

watermark_interval

Float

Pipe watermark delay interval

time_filter

String

Pipe time filter column

表5 TableColumnForIsapPipe

参数

是否必选

参数类型

描述

column_name

String

Table column name

column_data_type

String

参数解释:

列字段数据类型

  • ROW 行类型

  • MAP_STRING 字符串映射类型

  • MAP_DECIMAL 小数映射类型

  • TINYINT 微整型

  • SMALLINT 小整型

  • INT 整型

  • BIGINT 长整型

  • DECIMAL 精确小数类型

  • FLOAT 单精度浮点数

  • DOUBLE 双精度浮点数

  • CHAR 定长字符串

  • VARCHAR 不定长字符串

  • STRING 字符串类型

  • KEYWORD 关键字类型

  • BOOLEAN 布尔类型

  • DATE 日期类型

  • TIME 事件类型

  • TIMESTAMP 时间戳类型

  • TIMESTAMP_LTZ 本地时间戳类型

约束限制

不涉及

取值范围:

  • ROW

  • MAP_STRING

  • MAP_DECIMAL

  • TINYINT

  • SMALLINT

  • INT

  • BIGINT

  • DECIMAL

  • FLOAT

  • DOUBLE

  • CHAR

  • VARCHAR

  • STRING

  • KEYWORD

  • BOOLEAN

  • DATE

  • TIME

  • TIMESTAMP

  • TIMESTAMP_LTZ

默认值

不涉及

column_data_type_setting

String

Table column data type setting

column_type

String

参数解释:

列字段类型

  • PHYSICAL 物理字段

  • METADATA 元数据字段

  • VIRTUAL_METADATA 虚拟元数据字段

  • COMPUTED 计算字段

约束限制

不涉及

取值范围:

  • PHYSICAL

  • METADATA

  • VIRTUAL_METADATA

  • COMPUTED

默认值

不涉及

column_type_setting

String

列类型设置

default_value

String

Table column default value

nullable

Boolean

Table column nullable

array

Boolean

Is an array

depth

Long

Table column depth

parent_name

String

Table column name

own_name

String

Table column name without parent name

表6 PipeStorageSetting

参数

是否必选

参数类型

描述

streaming_bandwidth

Integer

Bandwidth in MB/s

streaming_dataspace_id

String

UUID

index_storage_period

Long

Index storage period

index_storage_size

Long

Index storage size in GB

index_shards

Long

Index shards

data_transformation_cu

Integer

Data transformation CU

表7 TableDisplaySetting

参数

是否必选

参数类型

描述

columns

Array of TableColumnDisplaySetting objects

表格列展示列表

format

String

参数解释:

表展示设置

  • TABLE 表展示

  • RAW 原始数据展示

约束限制

不涉及

取值范围:

  • TABLE

  • RAW

默认值

不涉及

表8 TableColumnDisplaySetting

参数

是否必选

参数类型

描述

column_name

String

表格列名称

column_alias

String

表格列别名

display_by_default

Boolean

是否默认展示

响应参数

状态码:200

表9 响应Body参数

参数

参数类型

描述

project_id

String

项目ID

workspace_id

String

UUID

pipe_id

String

UUID

pipe_name

String

Pipe name

pipe_alias

String

Pipe alias

category

String

参数解释:

管道目录

  • STREAMING_TO_INDEX 流式写入索引

  • STREAMING_TO_LAKE 流式写入数据湖

  • STREAMING_TO_INDEX_LAKE 流式写入索引和数据湖

  • STREAMING 流式传输中

约束限制

不涉及

取值范围:

  • STREAMING_TO_INDEX

  • STREAMING_TO_LAKE

  • STREAMING_TO_INDEX_LAKE

  • STREAMING

默认值

不涉及

directory

String

directory 目录分组

description

String

Pipe description

process_status

String

参数解释:

作业处理状态

  • COMPLETED 已完成

  • CREATING 创建中

  • UPDATING 更新中

  • DELETING 删除中

  • UPDATING_FAILED 更新失败

  • DELETING_FAILED 删除失败

约束限制

不涉及

取值范围:

  • COMPLETED

  • CREATING

  • UPDATING

  • DELETING

  • UPDATING_FAILED

  • DELETING_FAILED

默认值

不涉及

process_error

String

参数解释:

管道处理错误

  • NONE 无

约束限制

不涉及

取值范围:

  • NONE

默认值

不涉及

owner_type

String

参数解释:

管道所有者类型

  • SYSTEM 系统

  • USER 用户

  • CLOUD_LOG 云日志

约束限制

不涉及

取值范围:

  • SYSTEM

  • USER

  • CLOUD_LOG

默认值

不涉及

resources

Array of PipeResource objects

管道资源

schema

PipeSchema object

管道模式

create_time

Integer

毫秒时间戳

update_time

Integer

毫秒时间戳

delete_time

Integer

毫秒时间戳

表10 PipeResource

参数

参数类型

描述

pipe_resource_type

Object

管道资源

表11 PipeSchema

参数

参数类型

描述

columns

Array of TableColumnForIsapPipe objects

管道列

watermark_column

String

Pipe watermark column

watermark_interval

Float

Pipe watermark delay interval

time_filter

String

Pipe time filter column

表12 TableColumnForIsapPipe

参数

参数类型

描述

column_name

String

Table column name

column_data_type

String

参数解释:

列字段数据类型

  • ROW 行类型

  • MAP_STRING 字符串映射类型

  • MAP_DECIMAL 小数映射类型

  • TINYINT 微整型

  • SMALLINT 小整型

  • INT 整型

  • BIGINT 长整型

  • DECIMAL 精确小数类型

  • FLOAT 单精度浮点数

  • DOUBLE 双精度浮点数

  • CHAR 定长字符串

  • VARCHAR 不定长字符串

  • STRING 字符串类型

  • KEYWORD 关键字类型

  • BOOLEAN 布尔类型

  • DATE 日期类型

  • TIME 事件类型

  • TIMESTAMP 时间戳类型

  • TIMESTAMP_LTZ 本地时间戳类型

约束限制

不涉及

取值范围:

  • ROW

  • MAP_STRING

  • MAP_DECIMAL

  • TINYINT

  • SMALLINT

  • INT

  • BIGINT

  • DECIMAL

  • FLOAT

  • DOUBLE

  • CHAR

  • VARCHAR

  • STRING

  • KEYWORD

  • BOOLEAN

  • DATE

  • TIME

  • TIMESTAMP

  • TIMESTAMP_LTZ

默认值

不涉及

column_data_type_setting

String

Table column data type setting

column_type

String

参数解释:

列字段类型

  • PHYSICAL 物理字段

  • METADATA 元数据字段

  • VIRTUAL_METADATA 虚拟元数据字段

  • COMPUTED 计算字段

约束限制

不涉及

取值范围:

  • PHYSICAL

  • METADATA

  • VIRTUAL_METADATA

  • COMPUTED

默认值

不涉及

column_type_setting

String

列类型设置

default_value

String

Table column default value

nullable

Boolean

Table column nullable

array

Boolean

Is an array

depth

Long

Table column depth

parent_name

String

Table column name

own_name

String

Table column name without parent name

请求示例

响应示例

SDK代码示例

SDK代码示例如下。

Java

 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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.secmaster.v2.region.SecMasterRegion;
import com.huaweicloud.sdk.secmaster.v2.*;
import com.huaweicloud.sdk.secmaster.v2.model.*;


public class CreatePipeSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        SecMasterClient client = SecMasterClient.newBuilder()
                .withCredential(auth)
                .withRegion(SecMasterRegion.valueOf("<YOUR REGION>"))
                .build();
        CreatePipeRequest request = new CreatePipeRequest();
        request.withWorkspaceId("{workspace_id}");
        CreatePipeRequestBody body = new CreatePipeRequestBody();
        request.withBody(body);
        try {
            CreatePipeResponse response = client.createPipe(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}

Python

 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
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdksecmaster.v2.region.secmaster_region import SecMasterRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdksecmaster.v2 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = SecMasterClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(SecMasterRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = CreatePipeRequest()
        request.workspace_id = "{workspace_id}"
        request.body = CreatePipeRequestBody(
        )
        response = client.create_pipe(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

Go

 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
36
37
38
39
40
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    secmaster "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := secmaster.NewSecMasterClient(
        secmaster.SecMasterClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.CreatePipeRequest{}
	request.WorkspaceId = "{workspace_id}"
	request.Body = &model.CreatePipeRequestBody{
	}
	response, err := client.CreatePipe(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

成功

错误码

请参见错误码

相关文档