Sha256: 7c554c408f0880fbbcb0f250d01c46730cfe736d9c8f4dd65598442a4e5298ae

Contents?: true

Size: 1007 Bytes

Versions: 14

Compression:

Stored size: 1007 Bytes

Contents

# frozen_string_literal: true

module Awspec::Helper
  module Finder
    module Cloudwatch
      def find_cloudwatch_alarm(id)
        res = cloudwatch_client.describe_alarms({
                                                  alarm_names: [id]
                                                })
        return res.metric_alarms.first if res.metric_alarms.count == 1

        res = cloudwatch_client.describe_alarms
        alarms = res.metric_alarms.select do |alarm|
          alarm.alarm_arn == id
        end
        alarms.single_resource(id)
      end

      def select_all_cloudwatch_alarms
        selected = []
        res = cloudwatch_client.describe_alarms

        loop do
          selected += res.metric_alarms
          break if res.next_token.nil?

          res = cloudwatch_client.describe_alarms({
                                                    next_token: res.next_token
                                                  })
        end

        selected
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
awspec-1.32.0 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.31.0 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.30.0 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.29.3 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.29.2 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.29.1 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.29.0 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.28.2 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.28.1 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.28.0 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.27.1 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.27.0 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.26.0 lib/awspec/helper/finder/cloudwatch.rb
awspec-1.25.2 lib/awspec/helper/finder/cloudwatch.rb