Class: Apirelio::Rails::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/apirelio/rails/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/apirelio/rails/configuration.rb', line 12

def initialize
  @api_key = ENV.fetch("APIRELIO_API_KEY", "")
  @service = ENV.fetch("APIRELIO_SERVICE", "rails-api")
  @endpoint = ENV.fetch("APIRELIO_ENDPOINT", "https://apirelio.com")
  @environment = ENV.fetch("RAILS_ENV", "production")
  @release = ENV["APIRELIO_RELEASE"]
  @enabled = true
  @batch_size = 100
  @flush_interval = 5.0
  @max_queue_size = 10_000
  @timeout = 2.0
  @max_retries = 2
  @metadata_keys = []
  @include_routes = []
  @exclude_routes = []
  @customer_resolver = nil
  @application_resolver = nil
  @error_code_resolver = nil
  @metadata_resolver = nil
  @api_version_header = "HTTP_X_API_VERSION"
  @capture_headers = %w[HTTP_X_SDK_VERSION HTTP_USER_AGENT]
  @transport = nil
end

Instance Attribute Details

#api_keyObject

Returns the value of attribute api_key.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def api_key
  @api_key
end

#api_version_headerObject

Returns the value of attribute api_version_header.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def api_version_header
  @api_version_header
end

#application_resolverObject

Returns the value of attribute application_resolver.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def application_resolver
  @application_resolver
end

#batch_sizeObject

Returns the value of attribute batch_size.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def batch_size
  @batch_size
end

#capture_headersObject

Returns the value of attribute capture_headers.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def capture_headers
  @capture_headers
end

#customer_resolverObject

Returns the value of attribute customer_resolver.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def customer_resolver
  @customer_resolver
end

#enabledObject

Returns the value of attribute enabled.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def enabled
  @enabled
end

#endpointObject

Returns the value of attribute endpoint.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def endpoint
  @endpoint
end

#environmentObject

Returns the value of attribute environment.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def environment
  @environment
end

#error_code_resolverObject

Returns the value of attribute error_code_resolver.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def error_code_resolver
  @error_code_resolver
end

#exclude_routesObject

Returns the value of attribute exclude_routes.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def exclude_routes
  @exclude_routes
end

#flush_intervalObject

Returns the value of attribute flush_interval.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def flush_interval
  @flush_interval
end

#include_routesObject

Returns the value of attribute include_routes.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def include_routes
  @include_routes
end

#max_queue_sizeObject

Returns the value of attribute max_queue_size.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def max_queue_size
  @max_queue_size
end

#max_retriesObject

Returns the value of attribute max_retries.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def max_retries
  @max_retries
end

#metadata_keysObject

Returns the value of attribute metadata_keys.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def 
  @metadata_keys
end

#metadata_resolverObject

Returns the value of attribute metadata_resolver.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def 
  @metadata_resolver
end

#releaseObject

Returns the value of attribute release.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def release
  @release
end

#serviceObject

Returns the value of attribute service.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def service
  @service
end

#timeoutObject

Returns the value of attribute timeout.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def timeout
  @timeout
end

#transportObject

Returns the value of attribute transport.



6
7
8
# File 'lib/apirelio/rails/configuration.rb', line 6

def transport
  @transport
end

Instance Method Details

#client_optionsObject



36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/apirelio/rails/configuration.rb', line 36

def client_options
  {
    api_key: api_key,
    service: service,
    endpoint: endpoint,
    environment: environment,
    release: release,
    enabled: enabled,
    batch_size: batch_size,
    flush_interval: flush_interval,
    max_queue_size: max_queue_size,
    timeout: timeout,
    max_retries: max_retries,
    metadata_keys: ,
    transport: transport
  }
end