Module: Awspec::Helper::Finder::CloudwatchLogs

Included in:
Awspec::Helper::Finder
Defined in:
lib/awspec/helper/finder/cloudwatch_logs.rb

Instance Method Summary collapse

Instance Method Details

#find_cloudwatch_logs_group(id) ⇒ Object



4
5
6
7
8
9
10
# File 'lib/awspec/helper/finder/cloudwatch_logs.rb', line 4

def find_cloudwatch_logs_group(id)
  cloudwatch_logs_client.describe_log_groups({
                                               log_group_name_prefix: id
                                             }).log_groups.find do |log_group|
    log_group.log_group_name == id
  end
end

#find_cloudwatch_logs_metric_fileter_by_log_group_name(id, filter_name) ⇒ Object



16
17
18
19
20
21
22
23
# File 'lib/awspec/helper/finder/cloudwatch_logs.rb', line 16

def find_cloudwatch_logs_metric_fileter_by_log_group_name(id, filter_name)
  cloudwatch_logs_client.describe_metric_filters({
                                                   log_group_name: id,
                                                   filter_name_prefix: filter_name
                                                 }).metric_filters.find do |filter|
    filter.filter_name == filter_name
  end
end

#find_cloudwatch_logs_stream_by_log_group_name(id) ⇒ Object



12
13
14
# File 'lib/awspec/helper/finder/cloudwatch_logs.rb', line 12

def find_cloudwatch_logs_stream_by_log_group_name(id)
  cloudwatch_logs_client.describe_log_streams({ log_group_name: id }).log_streams.last
end

#find_cloudwatch_logs_subscription_fileter_by_log_group_name(id, filter_name) ⇒ Object



25
26
27
28
29
30
31
32
# File 'lib/awspec/helper/finder/cloudwatch_logs.rb', line 25

def find_cloudwatch_logs_subscription_fileter_by_log_group_name(id, filter_name)
  cloudwatch_logs_client.describe_subscription_filters({
                                                         log_group_name: id,
                                                         filter_name_prefix: filter_name
                                                       }).subscription_filters.find do |filter|
    filter.filter_name == filter_name
  end
end

#select_all_cloudwatch_logs_log_groupsObject



34
35
36
37
38
39
40
41
42
43
44
# File 'lib/awspec/helper/finder/cloudwatch_logs.rb', line 34

def select_all_cloudwatch_logs_log_groups
  req = {}
  log_groups = []
  loop do
    res = cloudwatch_logs_client.describe_log_groups(req)
    log_groups.push(*res.log_groups)
    break if res.next_token.nil?
    req[:next_token] = res.next_token
  end
  log_groups
end