module PactBroker::Config::RuntimeConfigurationLoggingMethods::InstanceMethods

Public Instance Methods

log_configuration(logger) click to toggle source
# File lib/pact_broker/config/runtime_configuration_logging_methods.rb, line 22
def log_configuration(logger)
  to_source_trace.sort_by { |key, _| key }.each { |key, value| log_config_inner(key, value, logger) }
end

Private Instance Methods

log_config_inner(key, value, logger) click to toggle source
# File lib/pact_broker/config/runtime_configuration_logging_methods.rb, line 26
def log_config_inner(key, value, logger)
  if !value.has_key? :value
    value.sort_by { |inner_key, _| inner_key }.each { |inner_key, inner_value| log_config_inner("#{key}.#{inner_key}", inner_value, logger) }
  elsif self.class.sensitive_value?(key)
    logger.info "#{key}=#{redact(key, value[:value])} source=#{value[:source]}"
  else
    logger.info "#{key}=#{value[:value]} source=#{value[:source]}"
  end
end
redact(name, value) click to toggle source
# File lib/pact_broker/config/runtime_configuration_logging_methods.rb, line 37
def redact name, value
  if value && name.to_s.end_with?("_url")
    begin
      uri = URI(value)
      uri.password = "*****"
      uri.to_s
    rescue StandardError
      "*****"
    end
  elsif !value.nil?
    "*****"
  else
    nil
  end
end