module TezosClient::Logger
Constants
- FILTERED_KEYS
Public Instance Methods
create_logger(param)
click to toggle source
Create a log that respond to << like a logger param can be 'stdout', 'stderr', a string (then we will log to that file) or a logger (then we return it)
# File lib/tezos_client/logger.rb, line 72 def create_logger(param) return unless param if param.is_a? String if param == "stdout" StdOutLogger.new elsif param == "stderr" StdErrLogger.new else FileLogger.new(param) end else param end end
env_logger()
click to toggle source
# File lib/tezos_client/logger.rb, line 88 def env_logger if @@env_logger @@env_logger elsif ENV["TEZOSCLIENT_LOG"] @@env_logger = create_logger ENV["TEZOSCLIENT_LOG"] end end
log(out)
click to toggle source
# File lib/tezos_client/logger.rb, line 11 def log(out) return unless self.class.logger self.class.logger << out + "\n" end
logger()
click to toggle source
# File lib/tezos_client/logger.rb, line 96 def logger @@logger || env_logger end
logger=(log)
click to toggle source
Setup the log for TezosClient
calls. Value should be a logger but can can be stdout, stderr, or a filename. You can also configure logging by the environment variable TEZOSCLIENT_LOG.
# File lib/tezos_client/logger.rb, line 42 def logger=(log) @@logger = create_logger log end
tezos_contents_log(content)
click to toggle source
# File lib/tezos_client/logger.rb, line 34 def tezos_contents_log(content) tezos_contents_log_filter(content).pretty_inspect end
tezos_contents_log_filter(content)
click to toggle source
# File lib/tezos_client/logger.rb, line 17 def tezos_contents_log_filter(content) if content.is_a? Array content.map { |el| tezos_contents_log_filter(el) } elsif content.is_a? Hash content.reduce({}) do |h, (k, v)| value = if FILTERED_KEYS.include? k.to_sym "#{v.to_s[0..30]}..." else tezos_contents_log_filter(v) end h.merge(k => value) end else content end end