bin/check-instance-health.rb in sensu-plugins-aws-4.1.0 vs bin/check-instance-health.rb in sensu-plugins-aws-5.0.0

- old
+ new

@@ -73,22 +73,27 @@ instance_ids.push(i[:instance_id]) end end begin - resp = ec2.describe_instance_status(instance_ids: instance_ids) - resp.instance_statuses.each do |item| - id = item.instance_id - if gather_events(item.events) - messages << "#{id} has unscheduled events" - end + resp = [] + instance_ids.each_slice(100) do |batch| + resp << ec2.describe_instance_status(instance_ids: batch) + end + resp.each do |r| + r.instance_statuses.each do |item| + id = item.instance_id + if gather_events(item.events) + messages << "#{id} has unscheduled events" + end - if gather_status(item.system_status) - messages << "#{id} has failed system status checks" - end + if gather_status(item.system_status) + messages << "#{id} has failed system status checks" + end - if gather_status(item.instance_status) - messages << "#{id} has failed instance status checks" + if gather_status(item.instance_status) + messages << "#{id} has failed instance status checks" + end end end rescue => e unknown "An error occurred processing AWS EC2 API: #{e.message}" end