def write_access(status, environ, params)
timestamp = Time.now.gmtime.to_s
rhost = environ['REMOTE_ADDR']
if (environ.include? 'REMOTE_HOST') then
rhost += ' '
rhost += environ['REMOTE_HOST']
end
method = environ['REQUEST_METHOD']
page = environ['PATH_INFO']
if (method != 'POST') then
query = params.map{|name, value| "#{name}=#{value}" }.join('&')
unless (query.empty?) then
page += '?'
page += query
end
end
user_agent = environ['HTTP_USER_AGENT']
referer = environ['HTTP_REFERER']
if (referer) then
referer = Escape.unescapeURL(referer)
referer = @input_filter.call(referer)
end
log = "#{timestamp}: [#{rhost}] #{method} #{page} - #{status}: #{user_agent} < #{referer}\n"
File.open(@filename, 'a') {|output|
output.print @output_filter.call(log)
}
nil
end