Module: Statsig

Defined in:
lib/statsig.rb

Class Method Summary collapse

Class Method Details

.check_gate(user, gate_name) ⇒ Object



13
14
15
16
# File 'lib/statsig.rb', line 13

def self.check_gate(user, gate_name)
  self.ensure_initialized
  @shared_instance&.check_gate(user, gate_name)
end

.get_config(user, dynamic_config_name) ⇒ Object



18
19
20
21
# File 'lib/statsig.rb', line 18

def self.get_config(user, dynamic_config_name)
  self.ensure_initialized
  @shared_instance&.get_config(user, dynamic_config_name)
end

.get_experiment(user, experiment_name) ⇒ Object



23
24
25
26
# File 'lib/statsig.rb', line 23

def self.get_experiment(user, experiment_name)
  self.ensure_initialized
  @shared_instance&.get_config(user, experiment_name)
end

.initialize(secret_key, options = nil) ⇒ Object



4
5
6
7
8
9
10
11
# File 'lib/statsig.rb', line 4

def self.initialize(secret_key, options = nil)
  unless @shared_instance.nil?
    puts 'Statsig already initialized.'
    return @shared_instance
  end

  @shared_instance = StatsigDriver.new(secret_key, options)
end

.log_event(user, event_name, value, metadata) ⇒ Object



28
29
30
31
# File 'lib/statsig.rb', line 28

def self.log_event(user, event_name, value, )
  self.ensure_initialized
  @shared_instance&.log_event(user, event_name, value, )
end

.shutdownObject



33
34
35
36
37
38
# File 'lib/statsig.rb', line 33

def self.shutdown
  unless @shared_instance.nil?
    @shared_instance.shutdown
  end
  @shared_instance = nil
end