Method: Arrow::Logger::ApacheOutputter#write

Defined in:
lib/arrow/logger/apacheoutputter.rb

#write(time, level, name, frame, msg) ⇒ Object

Write the given level, name, frame, and msg to the target output mechanism.



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/arrow/logger/apacheoutputter.rb', line 48

def write( time, level, name, frame, msg )
  return unless defined?( ::Apache )
  srvr = ::Apache.request.server
  return unless srvr.loglevel >= LEVELS[ level ]

  # Translate calls to log.warning into Apache::Server#log_warn
  level = :warn if level == :warning

  logMethod = srvr.method( "log_#{level}" )
  super {|msg|
    # Escape any unexpanded sprintf format patterns
    msg.gsub!( /%/, '%%' )
    logMethod.call( msg )
  }
end