Method: Wrapbox::LogFetcher::Awslogs#initialize

Defined in:
lib/wrapbox/log_fetcher/awslogs.rb

#initialize(log_group:, log_stream_prefix:, filter_pattern: nil, region: nil, access_key_id: nil, secret_access_key: nil, timestamp_format: "%Y-%m-%d %H:%M:%S.%3N", delay: 2, **options) ⇒ Awslogs

Returns a new instance of Awslogs.



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/wrapbox/log_fetcher/awslogs.rb', line 6

def initialize(log_group:, log_stream_prefix:, filter_pattern: nil, region: nil, access_key_id: nil, secret_access_key: nil, timestamp_format: "%Y-%m-%d %H:%M:%S.%3N", delay: 2, **options)
  begin
    require 'aws-sdk-cloudwatchlogs'
  rescue LoadError
    $stderr.puts "Require aws-sdk-cloudwatchlogs gem"
    exit 1
  end

  @log_group = log_group
  @log_stream_prefix = log_stream_prefix
  @filter_pattern = filter_pattern
  @region = region
  @access_key_id = access_key_id
  @secret_access_key = secret_access_key
  @timestamp_format = timestamp_format
  @delay = delay
  @options = options.reject { |_, v| v.nil? }
  @displayed_log_stream_names = {}
  @displayed_log_stream_number = 0
  @displayed_event_ids = {}
end