class Meteorlog::Wrapper::LogGroup

Public Class Methods

new(cloud_watch_logs, log_group, options = {}) click to toggle source
# File lib/meteorlog/wrapper/log_group.rb, line 7
def initialize(cloud_watch_logs, log_group, options = {})
  @cloud_watch_logs = cloud_watch_logs
  @log_group = log_group
  @options = options
end

Public Instance Methods

delete() click to toggle source
# File lib/meteorlog/wrapper/log_group.rb, line 39
def delete
  log(:info, 'Delete LogGroup', :red, self.log_group_name)

  unless @options[:dry_run]
    @cloud_watch_logs.delete_log_group(:log_group_name => self.log_group_name)
    @options[:modified] = true
  end
end
log_streams() click to toggle source
# File lib/meteorlog/wrapper/log_group.rb, line 13
def log_streams
  if @log_group.respond_to?(:log_streams)
    lss = @log_group.log_streams
  else
    lss = @cloud_watch_logs.describe_log_streams(
      :log_group_name => log_group_name
    ).each.inject([]) {|r, i| r + i.log_streams }
  end

  Meteorlog::Wrapper::LogStreamCollection.new(
    @cloud_watch_logs, lss, @log_group, @options)
end
metric_filters() click to toggle source
# File lib/meteorlog/wrapper/log_group.rb, line 26
def metric_filters
  if @log_group.respond_to?(:metric_filters)
    mfs = @log_group.metric_filters
  else
    mfs = @cloud_watch_logs.describe_metric_filters(
      :log_group_name => log_group_name
    ).each.inject([]) {|r, i| r + i.metric_filters }
  end

  Meteorlog::Wrapper::MetricFilterCollection.new(
    @cloud_watch_logs, mfs, @log_group, @options)
end