class Logging::Logger
Public Class Methods
define_log_methods( logger )
click to toggle source
# File lib/chef/knife/chop/logging.rb, line 22 def define_log_methods( logger ) ::Logging::LEVELS.each do |name,num| code = "undef :#{name} if method_defined? :#{name}\n" code << "undef :#{name}? if method_defined? :#{name}?\n" if logger.level > num code << <<-CODE def #{name}?( ) false end def #{name}( data = nil, trace = false ) false end CODE else code << <<-CODE def #{name}?( ) true end def #{name}( data = nil, trace = nil ) caller = Kernel.caller[3] num = #{num} unless caller.match(%r(/chef/knife/chop)) # We assume anything else comes via Chef::Log ... num -= 1 end if num >= #{logger.level} data = yield if block_given? #log_event(::Logging::LogEvent.new(@name, num, caller, true)) log_event(::Logging::LogEvent.new(@name, num, data, trace.nil? ? @trace : trace)) end true end CODE end logger._meta_eval(code, __FILE__, __LINE__) end logger end
Public Instance Methods
caller_tracing()
click to toggle source
# File lib/chef/knife/chop/logging.rb, line 58 def caller_tracing @trace end
logEvent(evt)
click to toggle source
# File lib/chef/knife/chop/logging.rb, line 63 def logEvent(evt) log_event evt end