【问题标题】:list RDS snapshot created today using Boto 3列出今天使用 Boto 3 创建的 RDS 快照
【发布时间】:2023-03-03 23:58:01
【问题描述】:

我正在做一个 Python Lambda 函数来描述今天创建的 RDS 快照列表。挑战在于如何将 datetime.datetime.today() 转换为 RDS 客户端可以理解的格式?

更新:我已经实施了一些建议的更改,我添加了一个字符串变量来将日期表达式转换为 Boto3 RDS 可以理解的格式。

'SnapshotCreateTime': datetime(2015, 1, 1),

today = (datetime.today()).date()
rds_client = boto3.client('rds')
snapshots = rds_client.describe_db_snapshots(SnapshotType='automated')

harini = "datetime("+ today.strftime('%Y,%m,%d') + ")"
print harini

print snapshots

for i in snapshots['DBSnapshots']:
    if i['SnapshotCreateTime'].date() == harini:
        print(i['DBSnapshotIdentifier'])
        print (today)

它仍然无法检索今天创建的自动快照列表

【问题讨论】:

    标签: python amazon-web-services aws-lambda amazon-rds


    【解决方案1】:

    SnapshotCreateTime 是一个 datetime.datetime 对象。因此,您可以通过 i['SnapshotCreateTime'].date() 获取日期。

    import boto3
    from datetime import datetime, timezone
    
    today = (datetime.today()).date()
    rds_client = boto3.client('rds')
    snapshots = rds_client.describe_db_snapshots()
    
    for i in snapshots['DBSnapshots']:
        if i['SnapshotCreateTime'].date() == today:
            print(i['DBSnapshotIdentifier'])
            print (today)
    

    【讨论】:

    • 嗨,我更新了问题,日期时间格式与 RDS 描述数据库快照所需的格式不匹配
    • 您不需要harini,只需与today 比较即可。
    猜你喜欢
    • 1970-01-01
    • 2018-10-10
    • 2016-02-10
    • 2018-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-01
    • 1970-01-01
    相关资源
    最近更新 更多