1
私はスナップショットの作成を担当する小さな機能を持っています。しかし、私は同様に進捗状況を取得したいのですが、次の関数は、私を助けていません:snapshot.wait_until_completedは進行状況も完了しても表示されません
def call_creater():
regions = ['eu-central-1']
for region in regions:
ec2 = boto3.resource('ec2', region, aws_access_key_id=ACCESS_KEY, aws_secret_access_key=SECRET_KEY,)
snapshot = ec2.create_snapshot(VolumeId='vol-f9e7d220', Description='fra01-he-trial-ansible01')
print snapshot.id
get_all_snapshots = ec2.snapshots.filter(snap_id=['SnapshotIds'])
print get_all_snapshots
#snapshot.wait_until_completed()
print "STARTING TO CREATE :"
time.sleep(10)
snapshot.wait_until_completed(
Filters=[
{
'Name': 'progress'
}
]
)
print "snapshot ready"
これはスロー:スナップショットが作成されます
'Name': 'progress'
File "C:\Python27\lib\site-packages\boto3\resources\factory.py", line 368, in do_waiter
waiter(self, *args, **kwargs)
File "C:\Python27\lib\site-packages\boto3\resources\action.py", line 201, in __call__
response = waiter.wait(**params)
File "C:\Python27\lib\site-packages\botocore\waiter.py", line 53, in wait
Waiter.wait(self, **kwargs)
File "C:\Python27\lib\site-packages\botocore\waiter.py", line 321, in wait
reason='Max attempts exceeded')
botocore.exceptions.WaiterError: Waiter SnapshotCompleted failed: Max attempts exceeded
けれども、私が取得することはできませんよステータス
load()はスナップショットの状態をチェックするwhileループでうまくいっています – Kittystone
私は 'load'を知りませんが、別の関数、チェックアウトのタイムアウトと間隔を取る関数は非常に一般的です私の経験ではパターン。 – l0b0