Module: Mongrel

Defined in:
lib/mongrel.rb,
lib/mongrel/cgi.rb,
lib/mongrel/gems.rb,
lib/mongrel/const.rb,
lib/mongrel/rails.rb,
lib/mongrel/stats.rb,
lib/mongrel/camping.rb,
lib/mongrel/command.rb,
lib/mongrel/handlers.rb,
lib/mongrel/header_out.rb,
lib/mongrel/configurator.rb,
lib/mongrel/http_request.rb,
lib/mongrel/http_response.rb,
lib/mongrel/uri_classifier.rb,
ext/http11/http11.c

Overview

A very simple little class for doing some basic fast statistics sampling. You feed it either samples of numeric data you want measured or you call Stats.tick to get it to add a time delta between the last time you called it. When you’re done either call sum, sumsq, n, min, max, mean or sd to get the information. The other option is to just call dump and see everything.

It does all of this very fast and doesn’t take up any memory since the samples are not stored but instead all the values are calculated on the fly.

Defined Under Namespace

Modules: Camping, Command, Const, Gems, HttpHandlerPlugin, Rails Classes: CGIWrapper, Configurator, DeflateFilter, DirHandler, Error404Handler, HeaderOut, HttpHandler, HttpParams, HttpParser, HttpParserError, HttpRequest, HttpResponse, HttpServer, RedirectHandler, StatisticsFilter, Stats, StatusHandler, StopServer, TimeoutError, URIClassifier

Constant Summary collapse

HTTP_STATUS_CODES =

Every standard HTTP code mapped to the appropriate message. These are used so frequently that they are placed directly in Mongrel for easy access rather than Mongrel::Const itself.

{
  100  => 'Continue',
  101  => 'Switching Protocols',
  200  => 'OK',
  201  => 'Created',
  202  => 'Accepted',
  203  => 'Non-Authoritative Information',
  204  => 'No Content',
  205  => 'Reset Content',
  206  => 'Partial Content',
  300  => 'Multiple Choices',
  301  => 'Moved Permanently',
  302  => 'Moved Temporarily',
  303  => 'See Other',
  304  => 'Not Modified',
  305  => 'Use Proxy',
  400  => 'Bad Request',
  401  => 'Unauthorized',
  402  => 'Payment Required',
  403  => 'Forbidden',
  404  => 'Not Found',
  405  => 'Method Not Allowed',
  406  => 'Not Acceptable',
  407  => 'Proxy Authentication Required',
  408  => 'Request Time-out',
  409  => 'Conflict',
  410  => 'Gone',
  411  => 'Length Required',
  412  => 'Precondition Failed',
  413  => 'Request Entity Too Large',
  414  => 'Request-URI Too Large',
  415  => 'Unsupported Media Type',
  500  => 'Internal Server Error',
  501  => 'Not Implemented',
  502  => 'Bad Gateway',
  503  => 'Service Unavailable',
  504  => 'Gateway Time-out',
  505  => 'HTTP Version not supported'
}