module Dronejob::Modules::Log
Constants
- COLOR_BOLD
- COLOR_END
- COLOR_GREY
- COLOR_GREY_BG
- COLOR_RED
- COLOR_RED_BG
- COLOR_WHITE
Public Instance Methods
alert(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 114 def alert(message) log(:alert, message) end
backtrace(lines)
click to toggle source
# File lib/dronejob/modules/log.rb, line 92 def backtrace(lines) lines.each do |line| line.gsub!("#{Dir.pwd}/", '') (file, lineno, info) = line.split(":") if %r{ruby/?gems}.match(line).nil? if log_stdout? log(:error, "#{COLOR_GREY_BG}#{COLOR_GREY} #{lineno.rjust(5, ' ')} #{COLOR_END} #{COLOR_RED}#{file}#{COLOR_END} #{COLOR_GREY}#{info}#{COLOR_END}") else log(:error, " - #{file}:#{lineno} #{info}") end end end end
critical(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 110 def critical(message) log(:critical, message) end
debug(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 59 def debug(message) log(:debug, message) end
emergency(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 118 def emergency(message) log(:emergency, message) end
error(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 75 def error(message) if message.kind_of?(StandardError) if option(:dronejob_log) == "google" log(:error, "#{message.backtrace.first}: #{message.message} (#{message.class})\n\t#{message.backtrace.drop(1).join("\n\t")}") else if log_stdout? log(:error, "#{COLOR_RED_BG}#{COLOR_BOLD}#{COLOR_WHITE} ERROR #{COLOR_END} #{COLOR_BOLD}#{message.class}: #{COLOR_RED}#{message.message}#{COLOR_END}") else log(:error, "[ERROR] #{message.class}: #{message.message}") end backtrace(message.backtrace) end else log(:error, message) end end
error!(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 106 def error!(message) throw message end
info(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 63 def info(message) log(:info, message) end
log(level, message, job = nil)
click to toggle source
# File lib/dronejob/modules/log.rb, line 34 def log(level, message, job = nil) if !logger.nil? if option(:dronejob_log) == "google" message = "[#{job&.job_id}] #{message}" if level != :error data = { message: message, job_id: job&.job_id, queue: job&.queue_name, phase: "none" } data[:phase_title] = job.phase_config[:title].to_s if job&.phase_config&.key?(:title) if job&.phase_config&.key?(:progress) data[:phase_progress] = job.phase_config[:progress] end logger.send(level, data.compact) else logger.send(level, message) end elsif job puts "#{level}: [#{job.phase}] #{message}" else puts "#{level}: #{message}" end end
notice(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 67 def notice(message) log(:notice, message) end
warning(message)
click to toggle source
# File lib/dronejob/modules/log.rb, line 71 def warning(message) log(:warning, message) end
Private Instance Methods
log_stdout?()
click to toggle source
# File lib/dronejob/modules/log.rb, line 164 def log_stdout? logdev = logger.instance_variable_get("@logdev") logger_source = logdev.dev if logdev.respond_to?(:dev) STDOUT == logger_source end