Class: Zonesync::Logger

Inherits:
Object
  • Object
show all
Defined in:
lib/zonesync/logger.rb

Class Method Summary collapse

Class Method Details

.log(method, records, dry_run: false) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/zonesync/logger.rb', line 8

def self.log(method, records, dry_run: false)
  loggers = [::Logger.new(STDOUT)]

  if !dry_run
    FileUtils.mkdir_p("log")
    loggers << ::Logger.new("log/zonesync.log")
  end

  loggers.each do |logger|
    operation =
      (records.length == 2 ? "\n" : "") +
      records.map { |r| r.to_h.values.join(" ") }.join("->\n")
    logger.info "Zonesync: #{method.capitalize} #{operation}"
  end
end