Route53: фильтр ListResourceRecordSets по RecordType - PullRequest
0 голосов
/ 02 мая 2019

Я не могу получить список ListResourceRecordSets службы aws route53 для фильтрации по типу StartRecord. Даже с фильтром StartRecordType он возвращает все записи (cname и A) вместо выбранного мной типа.

Я также заметил, что получил бы ошибку проверки, если StartRecordName не был включен, поэтому кажется, что если StartRecordType используется, то StartRecordName требуется.

Приведенный ниже код возвращает все записи, но не фильтрует должным образом.

    AWSLogin(instance)

    svc := route53.New(instance.AWSSession)

    listParams := &route53.ListResourceRecordSetsInput{
        HostedZoneId: aws.String("Z2798GPJN9CUFJ"), // Required
        StartRecordName: aws.String("subdomain.subdomain.mydomain.com"),
        StartRecordType: aws.String(route53.RRTypeA),
    //  StartRecordType: aws.String(route53.RRTypeCname),
    }
    respList, err := svc.ListResourceRecordSets(listParams)

    if err != nil {
        fmt.Println(err.Error())
        return
    }

    fmt.Println("All Type "A" records:")
    fmt.Println(respList)

1 Ответ

1 голос
/ 02 мая 2019

Я думаю, вы неправильно поняли, что делают StartRecordName и StartRecordType. Они не фильтруют список, а только указывают, где начинается список.

Из Сервисной документации :

Если указать и Имя, и Тип: результаты начинаются с первой записи в списке ресурсов, имя которой больше или равно имени, а тип больше или равен типу.

Так что из вашего примера я бы ожидал, что все будут возвращены ваши записи (до 100), но первой будет запись A для subdomain.subdomain.mydomain.com.

Затем он будет продолжаться (и переноситься) в алфавитном порядке по имени / типу.

...