class Debug

Save debug log information

Attributes

active[RW]

Flag to active debug save log

destination[RW]

Print log or save to file

save_html[RW]

Flag to save response HTML to file

Public Class Methods

new() click to toggle source

Initialize a debug object

# File lib/tiny_grabber/debug.rb, line 12
def initialize
  @active = false
  @destination = :print
  @save_html = false
end

Public Instance Methods

save(message) click to toggle source

Save log information

@param message Message body

# File lib/tiny_grabber/debug.rb, line 22
def save(message)
  message = "TG | #{Time.now.strftime('%Y%m%d-%H%M%S')} | #{message}"
  case @destination
  when :file
    save_to_file message
  when :print
    p message
  end
end
save_to_file(message) click to toggle source

Save log information to file

@param message Message body

# File lib/tiny_grabber/debug.rb, line 36
def save_to_file(message)
  # Encode message for correct Unix encoding
  message = message.force_encoding('utf-8')
  debug_path = "#{Dir.pwd}/log"
  Dir.mkdir(debug_path, 0o775) unless File.exist? debug_path
  filename = "#{Time.now.strftime('%Y%m%d')}.log"
  File.open("#{debug_path}/#{filename}", 'a+') { |f| f << "#{message}\r\n" }
end