如何添加所有资源 arn?Lambda Golang 列表标签

我试图列出我的 lambda 函数的所有标签,很费力,如果有人知道,请帮助我。


func main() {


    svc := lambda.New(session.New())


    input := &lambda.ListTagsInput{


        Resource: aws.String("arn:aws:lambda:us-east-1:657907747545:function-function-name"),

    


我希望列出我的 lambda 函数的所有标签 arn


大话西游666
浏览 79回答 1
1回答

catspeake

您可以使用以下代码:package mainimport (    "context"    awsutils "github.com/alessiosavi/GoGPUtils/aws"    "github.com/aws/aws-sdk-go-v2/aws"    "github.com/aws/aws-sdk-go-v2/service/lambda"    "os"    "sync")var lambdaClient *lambda.Client = nilvar once sync.Oncefunc init() {    once.Do(func() {        cfg, err := awsutils.New()        if err != nil {            panic(err)        }        lambdaClient = lambda.New(lambda.Options{Credentials: cfg.Credentials, Region: cfg.Region})    })}func ListLambdas() ([]string, error) {    f, err := lambdaClient.ListFunctions(context.Background(), &lambda.ListFunctionsInput{})    if err != nil {        return nil, err    }    var functions = make([]string, len(f.Functions))    for i, functionName := range f.Functions {        functions[i] = *functionName.FunctionName    }    continuationToken := f.NextMarker    for continuationToken != nil {        f, err = lambdaClient.ListFunctions(context.Background(), &lambda.ListFunctionsInput{Marker: continuationToken})        if err != nil {            return nil, err        }        continuationToken = f.NextMarker        for _, functionName := range f.Functions {            functions = append(functions, *functionName.FunctionName)        }    }    return functions, nil}func DescribeLambda(lambdaName string) (*lambda.GetFunctionOutput, error) {    function, err := lambdaClient.GetFunction(context.Background(), &lambda.GetFunctionInput{FunctionName: aws.String(lambdaName)})    if err != nil {        return nil, err    }    return function, nil}func ListTags(lambdaARN string) (*lambda.ListTagsOutput, error) {    return lambdaClient.ListTags(context.Background(), &lambda.ListTagsInput{        Resource: aws.String(lambdaARN),    })}然后您可以使用该ListLambdas方法列出所有 lambda。之后,您可以迭代返回的切片并调用该DescribeLambda方法以获得lambdaARN,然后您可以调用ListTags.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go