[英]ruby aws sdk v2 how to get the value of snapshot tag
p snapshot.tags
的結果是:
[#<struct Aws::EC2::Types::Tag key="snapshot_expire", value="2016-09-23 08:30:12 +0000">]
如何僅獲取Tag Key snapshot_expire
的值而沒有hour:sec:min(2016-09-23)?
這是我的代碼:
resp = ec2.describe_snapshots(owner_ids:['1234']) #.each do |snapshot|
resp.snapshots.each do |snapshot|
p snapshot.snapshot_id
p snapshot.tags
end
我知道常規的aws cli工具具有此選項。
謝謝!
參考: http : //docs.aws.amazon.com/sdkforruby/api/Aws/EC2/Client.html#describe_snapshots-instance_method
“快照”作為對象返回。 您可以使用方法從對象獲取特定的快照數據。 請參閱上面的文檔。 可以通過調用snapshot.snapshot_id獲得快照ID。 標簽是snapshot.tags。
require 'aws-sdk'
require 'date'
ec2 = Aws::EC2::Client.new(region: 'us-east-1')
snapshot_response = ec2.describe_snapshots(owner_ids:['xxx'])
snapshot_response.snapshots.each do |snapshot|
tagkeyexpire = snapshot.tags.select{|tag| tag.key == 'snapshot_expire'}
snapid = snapshot.snapshot_id
expiredate = Date.parse(tagkeyexpire[0].value) unless tagkeyexpire == []
puts "#{snapid} : #{expiredate}"
end
輸出看起來像
snap-01234567 : 2016-09-30
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.