更新时间:2024-10-30 GMT+08:00

测试数据源连通性

功能介绍

测试数据源连通性。

URI

POST /v2/{project_id}/fdi/instances/{instance_id}/datasources/{datasource_id}/test-connect

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目的ID,获取方式请参见API参考的“附录 > 获取项目ID”章节。

最小长度:1

最大长度:64

instance_id

String

实例ID。

最小长度:1

最大长度:64

datasource_id

String

数据源ID。

最小长度:1

最大长度:64

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

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

表3 请求Body参数

参数

是否必选

参数类型

描述

datasource_name

String

数据源名称,数据源名称不能包含&、<、>、"、'、(、) ,长度为1~255字符,参数不能全部为空格。

最小长度:1

最大长度:255

datasource_type

String

数据源类型。

  • DB2:DB2数据源
  • GAUSS100:Gauss100数据源
  • OPENGAUSS:GaussDB数据源
  • MYSQL:MySQL数据源
  • ORACLE:Oracle数据源
  • POSTGRESQL:PostgreSQL数据源
  • SQLSERVER:SQL Server数据源
  • TAURUS:GAUSSDB(FOR MYSQL)数据源
  • DIS:DIS数据源
  • DWS:DWS数据源
  • HIVE:HIVE数据源
  • MRSHBASE:MRS HBASE数据源
  • MRSHDFS:MRS HDFS数据源
  • MRSHIVE:MRS HIVE数据源
  • MRSKAFKA:MRS KAFKA数据源
  • MRSREDIS:MRS REDIS数据源
  • MRSCLICKHOUSE:MRS CLICKHOUSE数据源
  • FTP:FTP数据源
  • OBS:OBS数据源
  • ACTIVEMQ:ActiveMQ数据源
  • ARTEMISMQ:ArtemisMQ数据源
  • IBMMQ:IBM MQ数据源
  • KAFKA:Kafka数据源
  • MQS:MQS数据源
  • RABBITMQ:RabbitMQ数据源
  • HANA:HANA数据源
  • MONGODB:MongoDB数据源
  • REDIS:Redis数据源
  • API:API数据源
  • WEBSOCKET:WebSocket数据源
  • LDAP:LDAP数据源
  • SAP:SAP数据源
  • SNMP:SNMP数据源
  • AOMDP:AOMDP数据源
  • ROCKETMQ:RocketMQ数据源
  • DM:DM数据源
  • CLICKHOUSE:Clickhouse数据源
  • HL7:HL7数据源(site形态不支持)
  • ROMA20MQS:ROMA20.0 MQS数据源
  • IMF:IMF数据源(仅支持HCS形态)

最小长度:4

最大长度:32

app_id

String

数据源所属应用ID。

最小长度:4

最大长度:255

content

Content object

数据源详细信息。

description

String

最大长度:1024

表4 Content

参数

是否必选

参数类型

描述

gauss100_version

String

gauss100的版本号。 数据源类型为gauss100的时候必填

  • V100R003C20
  • V300R001C00

最小长度:1

最大长度:64

host

String

主机IP地址。

  • 数据源为DWS、HANA、RABBITMQ、SAP、SNMP、IBMMQ类型时需要配置。
  • 数据源为MYSQL、ORACLE、SQLSERVER、DB2、GAUSS100、GaussDB(for MySQL)、ARTEMISMQ、POSTGRESQL、GaussDB、HIVE类型且mode为default时需要配置。
  • 数据源为IMF类型且mq_type为RabbitMQ时需要配置。
  • 初始值为空,配置任务启动后生成host。

最小长度:4

最大长度:255

port

String

端口,端口号为0到65535。

  • 数据源为DWS、HANA、RABBITMQ、SAP、SNMP、IBMMQ,obs类型时需要配置。
  • 数据源为MYSQL、ORACLE、SQLSERVER、DB2、GAUSS100、GaussDB(for MySQL)、ARTEMISMQ、POSTGRESQL、GaussDB、HIVE类型且mode为default时需要配置。
  • 数据源为IMF类型且mq_type为RabbitMQ时需要配置。

最小长度:1

最大长度:65535

database_name

String

数据库名称。

  • 数据源为DWS、HANA、RABBITMQ、SAP、SNMP、IBMMQ,obs类型时需要配置。
  • 数据源为MYSQL、SQLSERVER、DB2、GAUSS100、GaussDB(for MySQL)、ARTEMISMQ、POSTGRESQL、GaussDB、HIVE类型且mode为default时需要配置。
  • 数据源为ORACLE类型且mode为(default、multiAddress)时需要配置。

最小长度:1

最大长度:2147483647

redis_database

String

REDIS数据源类型配置,数据库编号,纯数字编码。

最小长度:1

最大长度:1000

user_name

String

访问服务的用户名。

  • 数据源为MYSQL、DWS、FTP、ORACLE、MONGODB、HANA、SQLSERVER、DB2、GAUSS100、GaussDB(for MySQL)、ACTIVEMQ、ARTEMISMQ、POSTGRESQL、GaussDB、RABBITMQ、SAP、IBMMQ、HIVE、IMF、RocketMQ类型时需要配置。
  • 数据源为WEBSOCKET类型,认证方式(basicauth)时需要配置。
  • 数据源为LDAP,安全认证类型(security_auth_type)为simple时需要配置。

最小长度:1

最大长度:255

password

String

访问服务的密码。

  • 数据源为MYSQL、DWS、FTP、ORACLE、MONGODB、HANA、SQLSERVER、DB2、GAUSS100、GaussDB(for MySQL)、ACTIVEMQ、ARTEMISMQ、POSTGRESQL、GaussDB、RABBITMQ、SAP、IBMMQ、HIVE、IMF、RocketMQ类型时需要配置。
  • 数据源为WEBSOCKET,且认证方式(basicauth)时需要配置。
  • 数据源为LDAP,且安全认证类型(security_auth_type)为simple时需要配置。

最小长度:4

最大长度:2147483647

mode

String

数据源连接模式,有三种:default (默认模式)、professional (专业模式)、multiAddress (多地址)。

  • 数据源为DWS、MONGODB、REDIS、HANA时配置default。
  • 数据源为MYSQL、SQLSERVER、DB2、GAUSS100、GaussDB(for MySQL)、POSTGRESQL、GaussDB、HIVE时配置default或professional。
  • 数据源为ORACLE时配置专有的模式multiAddress。

最小长度:4

最大长度:255

cdc_mode

String

cdc模式,只有组合任务使用。

最小长度:4

最大长度:10

multi_oracle_address

Array of MultiOracleAddress objects

ORACLE集群地址,当“mode”为“multiAddress”时需要配置。

数组长度:1 - 100

oracle_service_name

String

ORACLE集群服务名。

最小长度:4

最大长度:64

ftp_connect_mode

String

访问FTP服务的连接模式。

  • active (主动模式)
  • passive (被动模式)

最小长度:4

最大长度:2147483647

ftp_protocol

String

访问FTP服务协议类型。

  • sftp
  • ftp

最小长度:4

最大长度:2147483647

address

String

地址。

  • OBS (obs远端地址,obs数据源使用)。
  • MONGODB (MONGODB数据源类型主机IP地址,多个IP:PORT,使用","隔开)。
  • REDIS (redis服务地址,多个IP:PORT,使用","隔开)。

最小长度:0

最大长度:256

ak

String

Access Key ID。

数据源为OBS,DIS类型时需要配置。

最小长度:0

最大长度:256

sk

String

Secret Access Key。

数据源为OBS,DIS类型时需要配置。

最小长度:0

最大长度:256

bucket_name

String

桶名称,数据源为OBS时需要配置。

最小长度:0

最大长度:256

https

Boolean

是否使用https,数据源为OBS时需要配置,一般默认使用。

url

String

连接字符串,访问url。

  • 数据源为API、LDAP、WEBSOCKE类型时需要配置。
  • 数据源为MYSQL、ORACLE、DB2、GAUSS100、GaussDB(for MySQL)、POSTGRESQL、GaussDB,且mode配置为professional专业时需要配置。

最小长度:0

最大长度:256

api_method

String

访问API请求方式。

  • POST
  • PUT
  • DELETE
  • PATCH
  • GET

最小长度:0

最大长度:10

auth_method

String

访问WEBSOCKET服务的认证方式。

  • none
  • basicauth

最小长度:0

最大长度:256

api_auth_detail

ApiAuthDetail object

API鉴权详细字段。

broker

String

KAFKA、MQS、ACTIVEMQ的服务器地址,多个IP:PORT,使用","分隔。

最小长度:0

最大长度:256

ssl

Boolean

是否开启SSL认证。

连接MQS内网地址时,若MQS开启了SSL,请选择“是”。

ssl_enable

Boolean

是否开启SSL认证。

  • 数据源为KAFKA时需要配置。
  • 数据源为ARTEMISMQ、ACTIVEMQ、RABBITMQ、IBMMQ时需要配置。

ssl_username

String

SSL用户名/应用Key。

数据源为KAFKA或者MQS时,且开启SSL认证时需要配置。

最小长度:0

最大长度:256

ssl_password

String

SSL密码/应用Secret。

数据源为KAFKA或者MQS时,且开启SSL认证时需要配置。

最小长度:0

最大长度:256

acl_enable

Boolean

是否开启ACL认证。

  • 数据源为RocketMQ时需要配置。

mq_type

String

IMF数据源消息队列类型。

  • RocketMQ
  • RabbitMQ

最小长度:0

最大长度:10

mongodb_auth_source

String

MONGODB认证源。

最小长度:0

最大长度:60

mongodb_cluster_enable

Boolean

MONGODB集群模式。

  • true (集群模式)
  • false (非集群模式)

mongodb_replica_set

String

MONGODB副本集。 当MONGODB为非集群模式时配置。

最小长度:0

最大长度:256

encoding

String

编码格式。

  • 数据源为GAUSS100、POSTGRESQL类型时配置“big5”。
  • 数据源为MYSQL、GaussDB(for MySQL)类型且mode为default时配置。

最小长度:0

最大长度:10

mysql_timeout

Integer

MYSQL连接超时时间(秒)。

最小值:1

最大值:20000

trust_store_password

String

公钥库密码。

数据源类型为ACTIVEMQ、ARTEMISMQ、RABBITMQ、IBMMQ且开启SSL认证时需要配置。

最小长度:0

最大长度:256

trust_store

String

公钥库文件。

数据源类型为ACTIVEMQ、ARTEMISMQ、RABBITMQ、IBMMQ且开启SSL认证时需要配置。

最小长度:0

最大长度:1024

trust_store_file_type

String

公钥库文件类型。

数据源类型为ACTIVEMQ、ARTEMISMQ、RABBITMQ、IBMMQ且开启SSL认证时需要配置。

最小长度:0

最大长度:10

ssl_auth_method

String

SSL鉴权方式。

数据源类型为ACTIVEMQ、ARTEMISMQ且开启SSL认证时需要配置。

  • one-way (单向认证)
  • two-way (双向认证)

最小长度:0

最大长度:10

key_store

String

私钥库文件内容。

数据源类型为ACTIVEMQ、ARTEMISMQ,开启SSL认证并且认证方式是two-way时需要配置。

最小长度:0

最大长度:1024

key_store_file_type

String

私钥库文件类型。

数据源类型为ACTIVEMQ、ARTEMISMQ,开启SSL认证并且认证方式是two-way时需要配置。

最小长度:0

最大长度:10

key_store_password

String

私钥库密码。

数据源类型为ACTIVEMQ、ARTEMISMQ,开启SSL认证并且认证方式是two-way时需要配置。

最小长度:0

最大长度:256

key_store_key_password

String

私钥库私钥密码。

数据源类型为ACTIVEMQ、ARTEMISMQ,开启SSL认证并且认证方式是two-way时需要配置。

最小长度:0

最大长度:256

dis_tunnel_name

String

DIS通道名称。

最小长度:0

最大长度:256

dis_data_type

String

DIS数据类别。

包含:JSON。

最小长度:0

最大长度:256

dis_setting_type

String

DIS配置类别。

  • senior (高级)
  • basic (基础)

最小长度:0

最大长度:256

dis_endpoint

String

DIS Endpoint,当setting_type为senior时填写。

最小长度:0

最大长度:256

dis_region

String

DIS Region,当setting_type为senior时填写。

最小长度:0

最大长度:256

dis_source_project_id

String

DIS源端项目ID,当setting_type为senior时填写。

最小长度:0

最大长度:256

hl7_position

String

HL7数据源方向。

  • source (源端)
  • target (目标端)

最小长度:0

最大长度:256

hl7_whitelist_enable

Boolean

HL7是否开启白名单设置。

hl7_whitelist

String

HL7白名单。允许同步数据到源端HL7的服务器地址,当HL7为源端(position为source)并且开启白名单设置(open_whitelist为true)时填写。

最小长度:0

最大长度:256

ldap_security_auth_type

String

LDAP安全认证类型。

最小长度:0

最大长度:256

rabbitmq_virtual_host

String

RabbitMQ虚拟主机。

最小长度:0

最大长度:256

rabbitmq_ssl_protocol

String

RABBITMQ SSL认证协议。

包含:TLS。

最小长度:0

最大长度:10

rocketmq_namesrv_addr

String

IMF数据源RocketMQ连接地址,mq_type为RocketMQ时填写,多个地址以‘,’分隔。

最小长度:0

最大长度:256

namesrv_addr

String

ROMA 20.0 MQS连接地址。

最小长度:0

最大长度:256

app_id

String

ROMA 20.0 MQS APP Key

最小长度:0

最大长度:256

app_secret

String

ROMA 20.0 APP Secret

最小长度:0

最大长度:256

sap_client

String

SAP客户端号。

最小长度:0

最大长度:10

sap_sysnr

String

SAP实例编号。

最小长度:0

最大长度:256

snmp_network_protocol

String

SNMP网络协议。

  • udp
  • tcp

最小长度:0

最大长度:10

snmp_version

Integer

SNMP版本号。

最小值:0

最大值:3

snmp_community

String

SNMP团体名,用于访问SNMP管理代理的身份认证,相当于访问密码。

最小长度:0

最大长度:256

ibmmq_ccs_id

String

IBMMQ字符集标识。

最小长度:0

最大长度:65535

ibmmq_queue_manager

String

IBMMQ队列管理器。

最小长度:0

最大长度:256

ibmmq_channel

String

IBMMQ通道名称。

最小长度:0

最大长度:256

ibmmq_cipher_suite

String

IBMMQ密钥算法套件。

最小长度:0

最大长度:256

hdfs_path

String

HDFS URL,数据源为MRSHIVE、MRSHDFS类型时配置。

最小长度:0

最大长度:256

principal_name

String

机机交互用户名,数据源为MRSHIVE、MRSHDFS、MRSHBASE、MRSKAFKA、MRSREDIS类型时配置。

最小长度:0

最大长度:256

config_file_name

String

用户认证文件,文件获取方式参见API参考的“附录 > 获取数据源配置文件”章节。

  • 将获取到的文件打包成zip文件,文件名配置在config_file_name中,内容以BASE64编码形式放到config_file_content。
  • 数据源为MRSHIVE、MRSHDFS、MRSHBASE、MRSKAFKA、MRSREDIS、MRSCLICKHOUSE类型时配置。

最小长度:0

最大长度:256

config_file_content

String

用户认证文件内容,config_file_name对应的文件内容BASE64编码。

数据源为MRSHIVE、MRSHDFS、MRSHBASE、MRSKAFKA、MRSREDIS、MRSCLICKHOUSE类型时配置。

最小长度:0

最大长度:256

connection_instance_id

String

连接器实例ID,连接器发布后对应的实例ID。

最小长度:0

最大长度:256

connector_params

Object

连接器对应的数据源参数,值按实际填写。

表5 MultiOracleAddress

参数

是否必选

参数类型

描述

oracle_address

String

ORACLE地址。

最小长度:1

最大长度:64

oracle_port

String

ORACLE端口。

最小长度:1

最大长度:10

表6 ApiAuthDetail

参数

是否必选

参数类型

描述

auth_method

String

访问API服务的认证方式。

  • none
  • basicauth
  • oauth2.0
  • hmac
  • secret
  • md5
  • apiGateway,对应控制台上的AppKey Auth认证
  • keyTop
  • hikVision
  • huaweiNetworkManagement
  • liHe

最小长度:0

最大长度:256

app_auth_type

String

访问API服务的APP认证方式,认证方式为(apiGateway)时填写。

  • default
  • secret
  • jwt

最小长度:0

最大长度:2000

user_name

String

访问API服务的用户名。

  • 认证方式为(liHe、huaweiNetworkManagement、basicauth)时填写。

最小长度:4

最大长度:2000

password

String

访问API服务的密码。

认证方式为(liHe、huaweiNetworkManagement、basicauth、secret、md5、hmac)时填写。

最小长度:4

最大长度:2000

app_key

String

访问API服务的AppKey。

认证方式为(apiGateway)时填写。

最小长度:0

最大长度:256

app_secret

String

访问API服务的AppSecret。

认证方式为(apiGateway)时填写。

最小长度:0

最大长度:256

secret

String

访问API服务的Secret。

认证方式为(keyTop、hikVision、secret、hamc、md5)时填写。

最小长度:0

最大长度:256

alt_ip

String

访问API服务的备用IP。

认证方式为(huaweiNetworkManagement)时填写。

最小长度:0

最大长度:256

access_token_url

String

访问API服务的AccessTokenUrl。

认证方式为(liHe、oauth2.0 huaweiNetworkManagement)时填写。

最小长度:0

最大长度:256

client_id

String

访问API服务的客户端标识。

认证方式为oauth2.0时填写。

最小长度:0

最大长度:256

client_id_key

String

访问API服务的客户端传参标识key。

认证方式为oauth2.0时填写,不填写默认为client_id。

缺省值:client_id

最小长度:0

最大长度:256

client_secret

String

访问API服务的客户端密钥。

认证方式为oauth2.0时填写。

最小长度:0

最大长度:256

client_secret_key

String

访问API服务的客户端密钥key。

认证方式为oauth2.0时填写,不填写默认为client_secret。

缺省值:client_secret

最小长度:0

最大长度:256

scope

String

访问API服务的Scope。

认证方式为(liHe、oauth2.0)时填写。

最小长度:0

最大长度:256

authorization

String

访问API服务的Authorization。

认证方式为(liHe)时填写。

最小长度:0

最大长度:256

grant_type

String

访问API服务的授权类型。

  • 认证方式为(liHe、oauth2.0)时填写。
  • client_credentials (oauth2.0使用)。

最小长度:0

最大长度:256

响应参数

状态码: 200

表7 响应Body参数

参数

参数类型

描述

result

Boolean

返回结果。

true (成功)

最小长度:0

最大长度:10

状态码: 400

表8 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

最小长度:8

最大长度:36

error_msg

String

错误描述。

最小长度:2

最大长度:512

detail

String

描述详情。

最小长度:2

最大长度:512

状态码: 404

表9 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

最小长度:8

最大长度:36

error_msg

String

错误描述。

最小长度:2

最大长度:512

请求示例

测试指定MySQL数据源的连通性。

{
  "datasource_name" : "fdi_ds_y3k674",
  "datasource_type" : "MYSQL",
  "content" : {
    "host" : "**.**.**.**",
    "port" : "3306",
    "database_name" : "testfdi",
    "user_name" : "fditest",
    "password" : "******",
    "mode" : "default"
  },
  "app_id" : "9dbd2cd2-9622-4a1b-ad47-31018cf44cbd",
  "description" : "testtesttest"
}

响应示例

状态码: 200

OK

{
  "result" : true
}

状态码: 400

Error response

{
  "error_code" : "FDI.3016",
  "error_msg" : "Failed to test the connectivity.",
  "detail" : "Test connection failed."
}

状态码

状态码

描述

200

OK

400

Error response

404

Not Found

错误码

请参见错误码