Boto3:describe_db_instances()仅返回单个结果

时间:2018-12-07 09:31:43

标签: database amazon-web-services generator amazon-rds boto3

任何人都可以看看我的问题吗?

我正在尝试从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()时,收到以下消息:

  

回溯(最近通话最近):     在第51行的文件“ testit.py”中       打印下一个(测试)
  StopIteration

具有:test = all_rds_instances("eu-west-1")

就像API仅在我的RDS中看到一个实例一样,因为有多个实例。

预先感谢您的帮助。

0 个答案:

没有答案