class AwsLogCleaner::CloudWatchLogs
Class responsible for interacting with AWS Cloudwatch
Public Class Methods
new(credentials)
click to toggle source
# File lib/aws_log_cleaner/cloud_watch_logs.rb, line 9 def initialize(credentials) @cloud_watch_logs = Aws::CloudWatchLogs::Client.new( region: credentials.region, credentials: credentials.credentials ) end
Public Instance Methods
delete_log_groups(log_group_names)
click to toggle source
# File lib/aws_log_cleaner/cloud_watch_logs.rb, line 21 def delete_log_groups(log_group_names) log_group_names.each do |name| @cloud_watch_logs.delete_log_group( log_group_name: name ) end end
list_all_log_groups()
click to toggle source
# File lib/aws_log_cleaner/cloud_watch_logs.rb, line 16 def list_all_log_groups @log_groups = describe_log_groups if @log_groups.nil? @log_groups end
Private Instance Methods
describe_log_groups()
click to toggle source
# File lib/aws_log_cleaner/cloud_watch_logs.rb, line 31 def describe_log_groups log_groups = [] token = nil loop do resp = @cloud_watch_logs.describe_log_groups(next_token: token) log_groups.concat(resp.log_groups) token = resp.next_token return log_groups if token.to_s.empty? end end