Class: SimpleSegment::Configuration

Inherits:
Object
  • Object
show all
Includes:
Logging, Utils
Defined in:
lib/simple_segment/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Logging

#default_logger, included

Methods included from Utils

included, #isoify_dates, #isoify_dates!, #maybe_datetime_in_iso8601, #symbolize_keys

Constructor Details

#initialize(settings = {}) ⇒ Configuration

Returns a new instance of Configuration.

Raises:

  • (ArgumentError)


12
13
14
15
16
17
18
19
20
21
22
# File 'lib/simple_segment/configuration.rb', line 12

def initialize(settings = {})
  symbolized_settings = symbolize_keys(settings)
  @write_key = symbolized_settings[:write_key]
  @on_error = symbolized_settings[:on_error] || proc {}
  @stub = symbolized_settings[:stub]
  @logger = default_logger(symbolized_settings[:logger])
  @http_options = { use_ssl: true }
                  .merge(symbolized_settings[:http_options] || {})
  raise ArgumentError, 'Missing required option :write_key' \
    unless @write_key
end

Instance Attribute Details

#http_optionsObject (readonly)

Returns the value of attribute http_options.



10
11
12
# File 'lib/simple_segment/configuration.rb', line 10

def http_options
  @http_options
end

#loggerObject (readonly)

Returns the value of attribute logger.



10
11
12
# File 'lib/simple_segment/configuration.rb', line 10

def logger
  @logger
end

#on_errorObject (readonly)

Returns the value of attribute on_error.



10
11
12
# File 'lib/simple_segment/configuration.rb', line 10

def on_error
  @on_error
end

#stubObject (readonly)

Returns the value of attribute stub.



10
11
12
# File 'lib/simple_segment/configuration.rb', line 10

def stub
  @stub
end

#write_keyObject (readonly)

Returns the value of attribute write_key.



10
11
12
# File 'lib/simple_segment/configuration.rb', line 10

def write_key
  @write_key
end