module HTTParty::Logger

def self.add_formatter(name, formatter)

def self.add_formatter(name, formatter)
  raise HTTParty::Error.new("Log Formatter with name #{name} already exists") if formatters.include?(name)
  formatters.merge!(name.to_sym => formatter)
end

def self.build(logger, level, formatter)

def self.build(logger, level, formatter)
  level ||= :info
  formatter ||= :apache
  logger_klass = formatters[formatter] || Logger::ApacheFormatter
  logger_klass.new(logger, level)
end

def self.formatters

def self.formatters
  @formatters ||= {
    :curl => Logger::CurlFormatter,
    :apache => Logger::ApacheFormatter,
    :logstash => Logger::LogstashFormatter,
  }
end