通过 OSS Go SDK V2 调用 ListDataPipelineConfigurations 列举当前账号在指定地域下的所有数据管道(DataPipeline)规则。
前提条件
已安装 OSS Go SDK V2,可通过
go get github.com/aliyun/alibabacloud-oss-go-sdk-v2获取。已通过环境变量配置访问凭证。本文示例使用
credentials.NewEnvironmentVariableCredentialsProvider()从环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET读取凭证。
示例代码
package main
import (
"context"
"log"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/dataprocess"
)
func main() {
region := "cn-hangzhou"
cfg := oss.LoadDefaultConfig().
WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
WithRegion(region)
client := dataprocess.NewClient(cfg)
p := client.NewListDataPipelineConfigurationsPaginator(&dataprocess.ListDataPipelineConfigurationsRequest{})
var i int
log.Println("Data Pipeline Configurations:")
for p.HasNext() {
i++
page, err := p.NextPage(context.TODO())
if err != nil {
log.Fatalf("failed to get page %v, %v", i, err)
}
for _, data := range page.DataPipelineConfigurations {
log.Printf("Data Pipeline Name:%v, Data Pipeline Description:%v, Data Pipeline Role:%v, Status:%v, Phase:%v\n", oss.ToString(data.DataPipelineName), oss.ToString(data.DataPipelineDescription), oss.ToString(data.DataPipelineRole), oss.ToString(data.Status), oss.ToString(data.Phase))
}
}
}
相关文档
完整示例代码,请参见 list_data_pipeline_configurations.go。