Documentation
¶
Index ¶
- func DeleteTask(client *golangsdk.ServiceClient, instanceId, taskId string) error
- func PauseTask(client *golangsdk.ServiceClient, instanceId, taskId string) error
- func RestartTask(client *golangsdk.ServiceClient, instanceId, taskId string) error
- func StartOrRestartTask(client *golangsdk.ServiceClient, instanceId, taskId string) error
- type CreateTaskOpts
- type CreateTaskResponse
- type DisableResp
- type EnableOpts
- type EnableSmartResp
- type GetTaskResponce
- type QueryTasksOpts
- type SmartConnectTaskEntity
- type SmartConnectTaskSinkConfig
- type SmartConnectTaskSourceConfig
- type TaskDetails
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeleteTask ¶
func DeleteTask(client *golangsdk.ServiceClient, instanceId, taskId string) error
DELETE /v2/{project_id}/instances/{instance_id}/connector/tasks/{task_id}
func PauseTask ¶
func PauseTask(client *golangsdk.ServiceClient, instanceId, taskId string) error
PUT /v2/{project_id}/instances/{instance_id}/connector/tasks/{task_id}/pause
func RestartTask ¶
func RestartTask(client *golangsdk.ServiceClient, instanceId, taskId string) error
PUT /v2/{project_id}/instances/{instance_id}/connector/tasks/{task_id}/resume
func StartOrRestartTask ¶
func StartOrRestartTask(client *golangsdk.ServiceClient, instanceId, taskId string) error
PUT /v2/{project_id}/kafka/instances/{instance_id}/connector/tasks/{task_id}/restart
Types ¶
type CreateTaskOpts ¶
type CreateTaskOpts struct {
// Smart Connect task name
TaskName string `json:"task_name,omitempty"`
// Indicates whether to start a task later
StartLater *bool `json:"start_later,omitempty"`
// Topic of a Smart Connect task
Topics string `json:"topics,omitempty"`
// Regular expression of the topic of a Smart Connect task
TopicsRegex string `json:"topics_regex,omitempty"`
// Source type of a Smart Connect task
SourceType string `json:"source_type,omitempty"`
// Source configuration of a Smart Connect task
SourceTask *SmartConnectTaskSourceConfig `json:"source_task,omitempty"`
// Target type of a Smart Connect task
SinkType string `json:"sink_type,omitempty"`
// Target configuration of a Smart Connect task
SinkTask *SmartConnectTaskSinkConfig `json:"sink_task,omitempty"`
}
type CreateTaskResponse ¶
type CreateTaskResponse struct {
TaskName string `json:"task_name"`
Topics string `json:"topics"`
TopicsRegex string `json:"topics_regex"`
SourceType string `json:"source_type"`
SourceTask *SmartConnectTaskSourceConfig `json:"source_task"`
SinkType string `json:"sink_type"`
SinkTask *SmartConnectTaskSinkConfig `json:"sink_task"`
ID string `json:"id"`
Status string `json:"status"`
CreateTime int64 `json:"create_time"`
}
func CreateTask ¶
func CreateTask(client *golangsdk.ServiceClient, instanceId string, opts CreateTaskOpts) (*CreateTaskResponse, error)
This API is used to create a Smart Connect task. POST /v2/{project_id}/instances/{instance_id}/connector/tasks
type DisableResp ¶
type DisableResp struct {
// Task ID.
JobId string `json:"job_id"`
}
func Disable ¶
func Disable(client *golangsdk.ServiceClient, id string) (*DisableResp, error)
This API is used to disable Smart Connect for a pay-per-use instance. Send POST /v2/{project_id}/kafka/instances/{instance_id}/delete-connector
type EnableOpts ¶
type EnableOpts struct {
// DMS instance id
InstanceId string `json:"-" required:"true"`
// Bandwidth for deploying Smart Connect, that is, the maximum amount
// of data transferred per unit time. Use the bandwidth of the current instance.
Specification string `json:"specification,omitempty"`
// Number of connectors. Min.: 2.
// The default value is 2 if it is not specified.
NodeCount string `json:"node_cnt,omitempty"`
// Specification code of the connector.
// This parameter is mandatory only for old instance flavors.
SpecCode string `json:"spec_code,omitempty"`
}
type EnableSmartResp ¶
type EnableSmartResp struct {
// Task ID.
JobId string `json:"job_id"`
// Instance dump ID.
ConnectorId string `json:"connector_id"`
}
func Enable ¶
func Enable(client *golangsdk.ServiceClient, opts EnableOpts) (*EnableSmartResp, error)
This API is used to enable Smart Connect so you can create a connector. Send POST /v2/{project_id}/instances/{instance_id}/connector
type GetTaskResponce ¶
type GetTaskResponce struct {
Tasks []SmartConnectTaskEntity `json:"tasks"`
TotalNumber int `json:"total_number"`
MaxTasks int `json:"max_tasks"`
QuotaTasks int `json:"quota_tasks"`
}
func ListTasks ¶
func ListTasks(client *golangsdk.ServiceClient, opts QueryTasksOpts) (*GetTaskResponce, error)
This API is used to query Smart Connect tasks. GET /v2/{project_id}/instances/{instance_id}/connector/tasks
type QueryTasksOpts ¶
type SmartConnectTaskEntity ¶
type SmartConnectTaskEntity struct {
TaskName string `json:"task_name"`
Topics string `json:"topics"`
TopicsRegex string `json:"topics_regex"`
SourceType string `json:"source_type"`
SourceTask *SmartConnectTaskSourceConfig `json:"source_task"`
SinkType string `json:"sink_type"`
SinkTask *SmartConnectTaskSinkConfig `json:"sink_task"`
ID string `json:"id"`
Status string `json:"status"`
CreateTime int64 `json:"create_time"`
}
type SmartConnectTaskSinkConfig ¶
type SmartConnectTaskSinkConfig struct {
// Redis-specific fields
RedisAddress string `json:"redis_address,omitempty"`
RedisType string `json:"redis_type,omitempty"`
DcsInstanceId string `json:"dcs_instance_id,omitempty"`
RedisPassword string `json:"redis_password,omitempty"`
// OBS-specific fields
ConsumerStrategy string `json:"consumer_strategy,omitempty"`
DestinationFileType string `json:"destination_file_type,omitempty"`
DeliverTimeInterval int `json:"deliver_time_interval,omitempty"`
AccessKey string `json:"access_key,omitempty"`
SecretKey string `json:"secret_key,omitempty"`
ObsBucketName string `json:"obs_bucket_name,omitempty"`
ObsPath string `json:"obs_path,omitempty"`
PartitionFormat string `json:"partition_format,omitempty"`
RecordDelimiter string `json:"record_delimiter,omitempty"`
StoreKeys *bool `json:"store_keys,omitempty"`
}
type SmartConnectTaskSourceConfig ¶
type SmartConnectTaskSourceConfig struct {
// Redis-specific fields
RedisAddress string `json:"redis_address,omitempty"`
RedisType string `json:"redis_type,omitempty"`
DcsInstanceId string `json:"dcs_instance_id,omitempty"`
RedisPassword string `json:"redis_password,omitempty"`
SyncMode string `json:"sync_mode,omitempty"`
FullSyncWaitMs int `json:"full_sync_wait_ms,omitempty"`
FullSyncMaxRetry int `json:"full_sync_max_retry,omitempty"`
Ratelimit int `json:"ratelimit,omitempty"`
// Kafka-specific fields
CurrentClusterName string `json:"current_cluster_name,omitempty"`
ClusterName string `json:"cluster_name,omitempty"`
UserName string `json:"user_name,omitempty"`
Password string `json:"password,omitempty"`
SaslMechanism string `json:"sasl_mechanism,omitempty"`
InstanceId string `json:"instance_id,omitempty"`
BootstrapServers string `json:"bootstrap_servers,omitempty"`
SecurityProtocol string `json:"security_protocol,omitempty"`
Direction string `json:"direction,omitempty"`
SyncConsumerOffsetsEnabled *bool `json:"sync_consumer_offsets_enabled,omitempty"`
ReplicationFactor int `json:"replication_factor,omitempty"`
TaskNum int `json:"task_num,omitempty"`
RenameTopicEnabled *bool `json:"rename_topic_enabled,omitempty"`
ProvenanceHeaderEnabled *bool `json:"provenance_header_enabled,omitempty"`
ConsumerStrategy string `json:"consumer_strategy,omitempty"`
CompressionType string `json:"compression_type,omitempty"`
TopicsMapping string `json:"topics_mapping,omitempty"`
}
type TaskDetails ¶
type TaskDetails struct {
TaskName string `json:"task_name"`
Topics string `json:"topics"`
TopicsRegex string `json:"topics_regex"`
SourceType string `json:"source_type"`
SourceTask *SmartConnectTaskSourceConfig `json:"source_task"`
SinkType string `json:"sink_type"`
SinkTask *SmartConnectTaskSinkConfig `json:"sink_task"`
ID string `json:"id"`
Status string `json:"status"`
CreateTime int64 `json:"create_time"`
}
func GetTask ¶
func GetTask(client *golangsdk.ServiceClient, instanceId, taskId string) (*TaskDetails, error)