14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
# File 'lib/pdk/analytics.rb', line 14
def self.build_client(opts = {})
opts[:logger] ||= ::Logger.new(STDERR)
opts[:client] ||= :noop
if opts[:disabled]
opts[:logger].debug 'Analytics opt-out is set, analytics will be disabled'
opts[:client] = :noop
end
client_const = opts[:client].to_s.split('_').map(&:capitalize).join
PDK::Analytics::Client.const_get(client_const).new(opts)
rescue StandardError => e
opts[:logger].debug "Failed to initialize analytics client, analytics will be disabled: #{e}"
PDK::Analytics::Client::Noop.new(opts)
end
|