Boto3: description_db_instances () возвращает только один результат - PullRequest
0 голосов
/ 07 декабря 2018

Может кто-нибудь взглянуть на мою проблему, пожалуйста?

Я пытаюсь получить информацию о БД из RDS.У меня есть несколько баз данных, но когда я пытаюсь описать их с помощью метода Boto3 describe_db_instances(), он возвращает только один экземпляр в выводе JSON.

Я также попытался сделать это с помощью этого генератора:

def all_rds_instances(region, page_size=20):
            """
            Gets all the RDS instances in a generator (lazy iterator) so you can implement it as:
            `for instance in all_rds_instances(region):`

            page_size [explain what this does] should be bound between 20 and 100.
            """
            client = boto3.client('rds', region_name=region)
            marker = ""
            pool = []
            while True:
                    for instance in pool:
                            yield instance

                    if marker is None:
                            break
                    result = client.describe_db_instances(MaxRecords=page_size, Marker=marker)
                    marker = result.get("Marker")
                    pool = result.get("DBInstances")

но когда я next() это во второй раз, я получил следующее сообщение:

Traceback (последний вызов был последним): файл "testit.py", строка 51, вprint next (test)
StopIteration

с: test = all_rds_instances("eu-west-1")

Это похоже на то, что API видит только один экземпляр в моей RDS, так как их несколько.

Заранее спасибо за помощь.

...