Class: AmplitudeExperiment::RemoteEvaluationConfig
- Inherits:
-
Object
- Object
- AmplitudeExperiment::RemoteEvaluationConfig
- Defined in:
- lib/experiment/remote/config.rb
Overview
Configuration
Constant Summary collapse
- DEFAULT_SERVER_URL =
Default server url
'https://api.lab.amplitude.com'.freeze
- DEFAULT_LOGDEV =
$stdout- DEFAULT_LOG_LEVEL =
Logger::ERROR
Instance Attribute Summary collapse
-
#connect_timeout_millis ⇒ Integer
The request connection open timeout, in milliseconds, used when fetching variants triggered by calling start() or setUser().
-
#debug ⇒ Boolean
Set to true to log some extra information to the console.
-
#fetch_retries ⇒ Integer
The number of retries to attempt before failing.
-
#fetch_retry_backoff_max_millis ⇒ Integer
Retry backoff maximum in milliseconds.
-
#fetch_retry_backoff_min_millis ⇒ Integer
Retry backoff minimum (starting backoff delay) in milliseconds.
-
#fetch_retry_backoff_scalar ⇒ Float
Scales the minimum backoff exponentially.
-
#fetch_retry_timeout_millis ⇒ Integer
The request timeout for retrying fetch requests.
-
#fetch_timeout_millis ⇒ Integer
The request timeout, in milliseconds, used when fetching variants triggered by calling start() or setUser().
-
#logger ⇒ Logger
Set the client logger to a user defined [Logger].
-
#server_url ⇒ Boolean
The server endpoint from which to request variants.
Instance Method Summary collapse
-
#initialize(debug: false, logger: nil, server_url: DEFAULT_SERVER_URL, connect_timeout_millis: 60_000, fetch_timeout_millis: 10_000, fetch_retries: 0, fetch_retry_backoff_min_millis: 500, fetch_retry_backoff_max_millis: 10_000, fetch_retry_backoff_scalar: 1.5, fetch_retry_timeout_millis: 10_000) ⇒ RemoteEvaluationConfig
constructor
A new instance of RemoteEvaluationConfig.
Constructor Details
#initialize(debug: false, logger: nil, server_url: DEFAULT_SERVER_URL, connect_timeout_millis: 60_000, fetch_timeout_millis: 10_000, fetch_retries: 0, fetch_retry_backoff_min_millis: 500, fetch_retry_backoff_max_millis: 10_000, fetch_retry_backoff_scalar: 1.5, fetch_retry_timeout_millis: 10_000) ⇒ RemoteEvaluationConfig
Returns a new instance of RemoteEvaluationConfig.
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/experiment/remote/config.rb', line 67 def initialize(debug: false, logger: nil, server_url: DEFAULT_SERVER_URL, connect_timeout_millis: 60_000, fetch_timeout_millis: 10_000, fetch_retries: 0, fetch_retry_backoff_min_millis: 500, fetch_retry_backoff_max_millis: 10_000, fetch_retry_backoff_scalar: 1.5, fetch_retry_timeout_millis: 10_000) @logger = logger if logger.nil? @logger = Logger.new(DEFAULT_LOGDEV) @logger.level = debug ? Logger::DEBUG : DEFAULT_LOG_LEVEL end @server_url = server_url @connect_timeout_millis = connect_timeout_millis @fetch_timeout_millis = fetch_timeout_millis @fetch_retries = fetch_retries @fetch_retry_backoff_min_millis = fetch_retry_backoff_min_millis @fetch_retry_backoff_max_millis = fetch_retry_backoff_max_millis @fetch_retry_backoff_scalar = fetch_retry_backoff_scalar @fetch_retry_timeout_millis = fetch_retry_timeout_millis end |
Instance Attribute Details
#connect_timeout_millis ⇒ Integer
The request connection open timeout, in milliseconds, used when fetching variants triggered by calling start() or setUser().
25 26 27 |
# File 'lib/experiment/remote/config.rb', line 25 def connect_timeout_millis @connect_timeout_millis end |
#debug ⇒ Boolean
Set to true to log some extra information to the console.
13 14 15 |
# File 'lib/experiment/remote/config.rb', line 13 def debug @debug end |
#fetch_retries ⇒ Integer
The number of retries to attempt before failing.
33 34 35 |
# File 'lib/experiment/remote/config.rb', line 33 def fetch_retries @fetch_retries end |
#fetch_retry_backoff_max_millis ⇒ Integer
Retry backoff maximum in milliseconds. If the scaled backoff is greater than the max,
the max is used for all subsequent retries.
43 44 45 |
# File 'lib/experiment/remote/config.rb', line 43 def fetch_retry_backoff_max_millis @fetch_retry_backoff_max_millis end |
#fetch_retry_backoff_min_millis ⇒ Integer
Retry backoff minimum (starting backoff delay) in milliseconds. The minimum backoff is scaled
by `fetch_retry_backoff_scalar` after each retry failure.
38 39 40 |
# File 'lib/experiment/remote/config.rb', line 38 def fetch_retry_backoff_min_millis @fetch_retry_backoff_min_millis end |
#fetch_retry_backoff_scalar ⇒ Float
Scales the minimum backoff exponentially.
47 48 49 |
# File 'lib/experiment/remote/config.rb', line 47 def fetch_retry_backoff_scalar @fetch_retry_backoff_scalar end |
#fetch_retry_timeout_millis ⇒ Integer
The request timeout for retrying fetch requests.
51 52 53 |
# File 'lib/experiment/remote/config.rb', line 51 def fetch_retry_timeout_millis @fetch_retry_timeout_millis end |
#fetch_timeout_millis ⇒ Integer
The request timeout, in milliseconds, used when fetching variants triggered by calling start() or setUser().
29 30 31 |
# File 'lib/experiment/remote/config.rb', line 29 def fetch_timeout_millis @fetch_timeout_millis end |
#logger ⇒ Logger
Set the client logger to a user defined [Logger]
17 18 19 |
# File 'lib/experiment/remote/config.rb', line 17 def logger @logger end |
#server_url ⇒ Boolean
The server endpoint from which to request variants.
21 22 23 |
# File 'lib/experiment/remote/config.rb', line 21 def server_url @server_url end |