Module: Statsig
- Defined in:
- lib/id_list.rb,
lib/network.rb,
lib/statsig.rb,
lib/evaluator.rb,
lib/spec_store.rb,
lib/config_result.rb,
lib/statsig_logger.rb,
lib/evaluation_details.rb,
lib/interfaces/data_store.rb
Defined Under Namespace
Modules: EvaluationReason, Interfaces
Classes: ConfigResult, EvaluationDetails, Evaluator, IDList, Network, SpecStore, StatsigLogger
Class Method Summary
collapse
-
.check_gate(user, gate_name) ⇒ Object
-
.get_client_initialize_response(user) ⇒ Object
-
.get_config(user, dynamic_config_name) ⇒ Object
-
.get_experiment(user, experiment_name) ⇒ Object
-
.get_layer(user, layer_name) ⇒ Object
-
.get_statsig_metadata ⇒ Object
-
.initialize(secret_key, options = nil, error_callback = nil) ⇒ Object
-
.log_event(user, event_name, value = nil, metadata = nil) ⇒ Object
-
.override_config(config_name, config_value) ⇒ Object
-
.override_gate(gate_name, gate_value) ⇒ Object
-
.shutdown ⇒ Object
Class Method Details
.check_gate(user, gate_name) ⇒ Object
14
15
16
17
|
# File 'lib/statsig.rb', line 14
def self.check_gate(user, gate_name)
ensure_initialized
@shared_instance&.check_gate(user, gate_name)
end
|
.get_client_initialize_response(user) ⇒ Object
56
57
58
59
|
# File 'lib/statsig.rb', line 56
def self.get_client_initialize_response(user)
ensure_initialized
@shared_instance&.get_client_initialize_response(user)
end
|
.get_config(user, dynamic_config_name) ⇒ Object
19
20
21
22
|
# File 'lib/statsig.rb', line 19
def self.get_config(user, dynamic_config_name)
ensure_initialized
@shared_instance&.get_config(user, dynamic_config_name)
end
|
.get_experiment(user, experiment_name) ⇒ Object
24
25
26
27
|
# File 'lib/statsig.rb', line 24
def self.get_experiment(user, experiment_name)
ensure_initialized
@shared_instance&.get_experiment(user, experiment_name)
end
|
.get_layer(user, layer_name) ⇒ Object
29
30
31
32
|
# File 'lib/statsig.rb', line 29
def self.get_layer(user, layer_name)
ensure_initialized
@shared_instance&.get_layer(user, layer_name)
end
|
61
62
63
64
65
66
|
# File 'lib/statsig.rb', line 61
def self.get_statsig_metadata
{
'sdkType' => 'ruby-server',
'sdkVersion' => '1.16.2',
}
end
|
.initialize(secret_key, options = nil, error_callback = nil) ⇒ Object
4
5
6
7
8
9
10
11
12
|
# File 'lib/statsig.rb', line 4
def self.initialize(secret_key, options = nil, error_callback = nil)
unless @shared_instance.nil?
puts 'Statsig already initialized.'
@shared_instance.maybe_restart_background_threads
return @shared_instance
end
@shared_instance = StatsigDriver.new(secret_key, options, error_callback)
end
|
.log_event(user, event_name, value = nil, metadata = nil) ⇒ Object
34
35
36
37
|
# File 'lib/statsig.rb', line 34
def self.log_event(user, event_name, value = nil, metadata = nil)
ensure_initialized
@shared_instance&.log_event(user, event_name, value, metadata)
end
|
.override_config(config_name, config_value) ⇒ Object
51
52
53
54
|
# File 'lib/statsig.rb', line 51
def self.override_config(config_name, config_value)
ensure_initialized
@shared_instance&.override_config(config_name, config_value)
end
|
.override_gate(gate_name, gate_value) ⇒ Object
46
47
48
49
|
# File 'lib/statsig.rb', line 46
def self.override_gate(gate_name, gate_value)
ensure_initialized
@shared_instance&.override_gate(gate_name, gate_value)
end
|
.shutdown ⇒ Object
39
40
41
42
43
44
|
# File 'lib/statsig.rb', line 39
def self.shutdown
unless @shared_instance.nil?
@shared_instance.shutdown
end
@shared_instance = nil
end
|