each (Rack::CommonLogger)

    # File lib/rack/commonlogger.rb, line 34
        def each
          length = 0
          @body.each { |part|
            length += part.size
            yield part
          }

          @now = Time.now

          # Common Log Format: http://httpd.apache.org/docs/1.3/logs.html#common
          # lilith.local - - [07/Aug/2006 23:58:02] "GET / HTTP/1.1" 500 -
          #             %{%s - %s [%s] "%s %s%s %s" %d %s\n} %
          @logger << %{%s - %s [%s] "%s %s%s %s" %d %s %0.4f\n} %
            [
             @env['HTTP_X_FORWARDED_FOR'] || @env["REMOTE_ADDR"] || "-",
             @env["REMOTE_USER"] || "-",
             @now.strftime("%d/%b/%Y %H:%M:%S"),
             @env["REQUEST_METHOD"],
             @env["PATH_INFO"],
             @env["QUERY_STRING"].empty? ? "" : "?"+@env["QUERY_STRING"],
             @env["HTTP_VERSION"],
             @status.to_s[0..3],
             (length.zero? ? "-" : length.to_s),
             @now - @time
            ]
        end