mongrel 0.3.13.3 → 0.3.13.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +5 -4
- data/bin/mongrel_rails +162 -169
- data/doc/rdoc/classes/IO.src/M000001.html +5 -5
- data/doc/rdoc/classes/IO.src/M000002.html +5 -5
- data/doc/rdoc/classes/Kernel.html +10 -10
- data/doc/rdoc/classes/Kernel.src/M000010.html +19 -0
- data/doc/rdoc/classes/Kernel.src/M000011.html +23 -0
- data/doc/rdoc/classes/Mongrel.html +27 -10
- data/doc/rdoc/classes/Mongrel/CGIWrapper.html +67 -54
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000101.html → M000112.html} +11 -10
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000102.html → M000113.html} +31 -31
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000103.html → M000114.html} +20 -20
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000115.html +32 -0
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000105.html → M000116.html} +11 -11
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000106.html → M000117.html} +4 -4
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000107.html → M000118.html} +4 -4
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000108.html → M000119.html} +4 -4
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000109.html → M000120.html} +5 -5
- data/doc/rdoc/classes/Mongrel/Camping.html +5 -5
- data/doc/rdoc/classes/Mongrel/Camping.src/{M000048.html → M000039.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.html +10 -10
- data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/{M000049.html → M000040.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/{M000050.html → M000041.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.html +65 -65
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000016.html +24 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000017.html +42 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000018.html +18 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000029.html → M000019.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000030.html → M000020.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000031.html → M000021.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000032.html → M000022.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000033.html → M000023.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000034.html → M000024.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000035.html → M000025.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000026.html +11 -11
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000027.html +11 -29
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000028.html +5 -5
- data/doc/rdoc/classes/Mongrel/Command/Registry.html +15 -15
- data/doc/rdoc/classes/Mongrel/Command/Registry.src/{M000039.html → M000029.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Command/Registry.src/{M000040.html → M000030.html} +10 -6
- data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000031.html +58 -0
- data/doc/rdoc/classes/Mongrel/Configurator.html +115 -115
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000091.html +27 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000092.html +31 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000093.html +21 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000094.html +20 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000095.html +23 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000115.html → M000096.html} +4 -4
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000116.html → M000097.html} +24 -24
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000117.html → M000098.html} +5 -5
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000099.html +39 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000119.html → M000100.html} +19 -19
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000120.html → M000101.html} +4 -4
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000121.html → M000102.html} +10 -10
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000122.html → M000103.html} +5 -5
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000123.html → M000104.html} +4 -4
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000124.html → M000105.html} +8 -8
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000106.html +22 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/{M000126.html → M000107.html} +4 -4
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000108.html +34 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000109.html +18 -0
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000110.html +23 -14
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000111.html +5 -18
- data/doc/rdoc/classes/Mongrel/Const.html +11 -6
- data/doc/rdoc/classes/Mongrel/DeflateFilter.html +10 -10
- data/doc/rdoc/classes/Mongrel/DeflateFilter.src/{M000099.html → M000121.html} +5 -5
- data/doc/rdoc/classes/Mongrel/DeflateFilter.src/{M000100.html → M000122.html} +14 -14
- data/doc/rdoc/classes/Mongrel/DirHandler.html +31 -31
- data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000058.html → M000049.html} +0 -0
- data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000059.html → M000050.html} +0 -0
- data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000060.html → M000051.html} +12 -16
- data/doc/rdoc/classes/Mongrel/DirHandler.src/M000052.html +63 -0
- data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000062.html → M000053.html} +25 -25
- data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000063.html → M000054.html} +4 -4
- data/doc/rdoc/classes/Mongrel/Error404Handler.html +10 -10
- data/doc/rdoc/classes/Mongrel/Error404Handler.src/{M000131.html → M000123.html} +0 -0
- data/doc/rdoc/classes/Mongrel/Error404Handler.src/{M000132.html → M000124.html} +0 -0
- data/doc/rdoc/classes/Mongrel/HeaderOut.html +10 -10
- data/doc/rdoc/classes/Mongrel/HeaderOut.src/{M000072.html → M000064.html} +4 -4
- data/doc/rdoc/classes/Mongrel/HeaderOut.src/{M000073.html → M000065.html} +4 -4
- data/doc/rdoc/classes/Mongrel/HttpHandler.html +15 -15
- data/doc/rdoc/classes/Mongrel/HttpHandler.src/{M000078.html → M000070.html} +0 -0
- data/doc/rdoc/classes/Mongrel/HttpHandler.src/{M000079.html → M000071.html} +0 -0
- data/doc/rdoc/classes/Mongrel/HttpHandler.src/{M000080.html → M000072.html} +0 -0
- data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.html +20 -20
- data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/{M000022.html → M000012.html} +0 -0
- data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/{M000023.html → M000013.html} +0 -0
- data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/{M000024.html → M000014.html} +0 -0
- data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/{M000025.html → M000015.html} +0 -0
- data/doc/rdoc/classes/Mongrel/HttpParams.html +131 -0
- data/doc/rdoc/classes/Mongrel/HttpParser.html +35 -35
- data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000051.html → M000042.html} +1 -1
- data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000052.html → M000043.html} +1 -1
- data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000053.html → M000044.html} +1 -1
- data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000054.html → M000045.html} +3 -3
- data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000055.html → M000046.html} +1 -1
- data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000056.html → M000047.html} +1 -1
- data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000057.html → M000048.html} +1 -1
- data/doc/rdoc/classes/Mongrel/HttpRequest.html +63 -24
- data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000130.html +47 -0
- data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000131.html +37 -0
- data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000132.html +29 -0
- data/doc/rdoc/classes/Mongrel/HttpRequest.src/{M000139.html → M000133.html} +6 -6
- data/doc/rdoc/classes/Mongrel/HttpRequest.src/{M000140.html → M000134.html} +6 -6
- data/doc/rdoc/classes/Mongrel/HttpRequest.src/{M000141.html → M000135.html} +18 -18
- data/doc/rdoc/classes/Mongrel/HttpResponse.html +66 -72
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000073.html +25 -0
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000074.html +20 -0
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000075.html +26 -0
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000076.html +22 -0
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/{M000085.html → M000077.html} +8 -8
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/{M000086.html → M000078.html} +8 -8
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000079.html +31 -0
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/{M000088.html → M000080.html} +7 -7
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000081.html +7 -12
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000082.html +7 -7
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000083.html +7 -12
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000084.html +5 -9
- data/doc/rdoc/classes/Mongrel/HttpServer.html +58 -43
- data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000064.html → M000055.html} +11 -11
- data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000065.html → M000056.html} +76 -72
- data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000066.html → M000057.html} +18 -17
- data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000067.html → M000058.html} +7 -7
- data/doc/rdoc/classes/Mongrel/HttpServer.src/M000059.html +22 -0
- data/doc/rdoc/classes/Mongrel/HttpServer.src/M000060.html +62 -0
- data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000069.html → M000061.html} +20 -20
- data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000070.html → M000062.html} +4 -4
- data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000071.html → M000063.html} +8 -8
- data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.html +15 -15
- data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/{M000042.html → M000032.html} +23 -25
- data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/{M000043.html → M000033.html} +11 -11
- data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/{M000044.html → M000034.html} +12 -12
- data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.html +30 -15
- data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/{M000045.html → M000035.html} +9 -8
- data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000036.html +54 -0
- data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000037.html +21 -0
- data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000038.html +25 -0
- data/doc/rdoc/classes/Mongrel/RedirectHandler.html +10 -10
- data/doc/rdoc/classes/Mongrel/RedirectHandler.src/{M000136.html → M000128.html} +8 -8
- data/doc/rdoc/classes/Mongrel/RedirectHandler.src/{M000137.html → M000129.html} +13 -13
- data/doc/rdoc/classes/Mongrel/StatisticsFilter.html +16 -16
- data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/M000125.html +24 -0
- data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/{M000134.html → M000126.html} +10 -10
- data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/{M000135.html → M000127.html} +4 -4
- data/doc/rdoc/classes/{Stats.html → Mongrel/Stats.html} +44 -60
- data/doc/rdoc/classes/Mongrel/Stats.src/M000136.html +19 -0
- data/doc/rdoc/classes/Mongrel/Stats.src/M000137.html +23 -0
- data/doc/rdoc/classes/Mongrel/Stats.src/M000138.html +26 -0
- data/doc/rdoc/classes/Mongrel/Stats.src/M000139.html +18 -0
- data/doc/rdoc/classes/{Stats.src/M000009.html → Mongrel/Stats.src/M000140.html} +6 -6
- data/doc/rdoc/classes/Mongrel/Stats.src/M000141.html +18 -0
- data/doc/rdoc/classes/Mongrel/Stats.src/M000142.html +23 -0
- data/doc/rdoc/classes/Mongrel/Stats.src/M000143.html +20 -0
- data/doc/rdoc/classes/Mongrel/StatusHandler.html +20 -20
- data/doc/rdoc/classes/Mongrel/StatusHandler.src/{M000074.html → M000066.html} +4 -4
- data/doc/rdoc/classes/Mongrel/StatusHandler.src/{M000075.html → M000067.html} +10 -10
- data/doc/rdoc/classes/Mongrel/StatusHandler.src/{M000076.html → M000068.html} +28 -28
- data/doc/rdoc/classes/Mongrel/StatusHandler.src/{M000077.html → M000069.html} +6 -6
- data/doc/rdoc/classes/Mongrel/URIClassifier.html +30 -30
- data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000093.html → M000085.html} +4 -4
- data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000094.html → M000086.html} +4 -4
- data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000095.html → M000087.html} +0 -0
- data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000096.html → M000088.html} +1 -1
- data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000097.html → M000089.html} +0 -0
- data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000098.html → M000090.html} +1 -1
- data/doc/rdoc/classes/MongrelDbg.html +26 -26
- data/doc/rdoc/classes/MongrelDbg.src/M000005.html +24 -0
- data/doc/rdoc/classes/MongrelDbg.src/{M000016.html → M000006.html} +6 -6
- data/doc/rdoc/classes/MongrelDbg.src/{M000017.html → M000007.html} +8 -8
- data/doc/rdoc/classes/MongrelDbg.src/{M000018.html → M000008.html} +7 -7
- data/doc/rdoc/classes/MongrelDbg.src/{M000019.html → M000009.html} +4 -4
- data/doc/rdoc/classes/RequestLog/Access.html +5 -5
- data/doc/rdoc/classes/RequestLog/Access.src/{M000142.html → M000144.html} +5 -5
- data/doc/rdoc/classes/RequestLog/Files.html +5 -5
- data/doc/rdoc/classes/RequestLog/Files.src/{M000143.html → M000145.html} +5 -5
- data/doc/rdoc/classes/RequestLog/Objects.html +12 -6
- data/doc/rdoc/classes/RequestLog/Objects.src/M000147.html +51 -0
- data/doc/rdoc/classes/RequestLog/Params.html +5 -5
- data/doc/rdoc/classes/RequestLog/Params.src/{M000146.html → M000148.html} +5 -5
- data/doc/rdoc/classes/RequestLog/Threads.html +5 -5
- data/doc/rdoc/classes/RequestLog/Threads.src/{M000144.html → M000146.html} +20 -20
- data/doc/rdoc/classes/{ObjectTracker.html → Sync.html} +26 -45
- data/doc/rdoc/created.rid +1 -1
- data/doc/rdoc/files/COPYING.html +1 -1
- data/doc/rdoc/files/LICENSE.html +1 -1
- data/doc/rdoc/files/README.html +1 -1
- data/doc/rdoc/files/ext/http11/http11_c.html +1 -1
- data/doc/rdoc/files/lib/mongrel/camping_rb.html +1 -1
- data/doc/rdoc/files/lib/mongrel/cgi_rb.html +1 -1
- data/doc/rdoc/files/lib/mongrel/command_rb.html +1 -1
- data/doc/rdoc/files/lib/mongrel/configurator_rb.html +111 -0
- data/doc/rdoc/files/lib/mongrel/debug_rb.html +1 -1
- data/doc/rdoc/files/lib/mongrel/handlers_rb.html +1 -1
- data/doc/rdoc/files/lib/mongrel/init_rb.html +1 -1
- data/doc/rdoc/files/lib/mongrel/rails_rb.html +2 -1
- data/doc/rdoc/files/lib/mongrel/stats_rb.html +1 -1
- data/doc/rdoc/files/lib/mongrel/tcphack_rb.html +1 -1
- data/doc/rdoc/files/lib/mongrel_rb.html +2 -4
- data/doc/rdoc/fr_class_index.html +3 -2
- data/doc/rdoc/fr_file_index.html +1 -0
- data/doc/rdoc/fr_method_index.html +144 -142
- data/ext/http11/http11.c +69 -52
- data/ext/http11/http11_parser.c +366 -282
- data/ext/http11/http11_parser.h +2 -0
- data/ext/http11/http11_parser.rl +192 -0
- data/lib/mongrel.rb +127 -433
- data/lib/mongrel/cgi.rb +19 -6
- data/lib/mongrel/command.rb +15 -3
- data/lib/mongrel/configurator.rb +374 -0
- data/lib/mongrel/debug.rb +47 -56
- data/lib/mongrel/handlers.rb +16 -20
- data/lib/mongrel/rails.rb +36 -20
- data/lib/mongrel/stats.rb +60 -58
- data/test/test_conditional.rb +37 -30
- data/test/test_http11.rb +14 -14
- data/test/test_stats.rb +2 -2
- data/test/test_ws.rb +4 -2
- data/tools/rakehelp.rb +4 -4
- metadata +262 -260
- data/doc/rdoc/classes/Kernel.src/M000020.html +0 -19
- data/doc/rdoc/classes/Kernel.src/M000021.html +0 -23
- data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000104.html +0 -27
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000036.html +0 -24
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000037.html +0 -24
- data/doc/rdoc/classes/Mongrel/Command/Base.src/M000038.html +0 -18
- data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000041.html +0 -50
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000112.html +0 -20
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000113.html +0 -20
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000114.html +0 -23
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000118.html +0 -30
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000125.html +0 -25
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000127.html +0 -35
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000128.html +0 -18
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000129.html +0 -33
- data/doc/rdoc/classes/Mongrel/Configurator.src/M000130.html +0 -18
- data/doc/rdoc/classes/Mongrel/DirHandler.src/M000061.html +0 -63
- data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000138.html +0 -56
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000087.html +0 -31
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000089.html +0 -20
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000090.html +0 -20
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000091.html +0 -20
- data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000092.html +0 -18
- data/doc/rdoc/classes/Mongrel/HttpServer.src/M000068.html +0 -50
- data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000046.html +0 -51
- data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000047.html +0 -23
- data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/M000133.html +0 -24
- data/doc/rdoc/classes/MongrelDbg.src/M000015.html +0 -19
- data/doc/rdoc/classes/ObjectTracker.src/M000013.html +0 -27
- data/doc/rdoc/classes/ObjectTracker.src/M000014.html +0 -44
- data/doc/rdoc/classes/RequestLog/Objects.src/M000145.html +0 -19
- data/doc/rdoc/classes/Stats.src/M000005.html +0 -19
- data/doc/rdoc/classes/Stats.src/M000006.html +0 -23
- data/doc/rdoc/classes/Stats.src/M000007.html +0 -26
- data/doc/rdoc/classes/Stats.src/M000008.html +0 -18
- data/doc/rdoc/classes/Stats.src/M000010.html +0 -18
- data/doc/rdoc/classes/Stats.src/M000011.html +0 -23
- data/doc/rdoc/classes/Stats.src/M000012.html +0 -20
- data/lib/http11.so +0 -0
|
@@ -10,13 +10,14 @@
|
|
|
10
10
|
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
11
|
</head>
|
|
12
12
|
<body class="standalone-code">
|
|
13
|
-
<pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 43</span>
|
|
14
|
+
43: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">dir</span>, <span class="ruby-identifier">mime_map</span> = {})
|
|
15
|
+
44: <span class="ruby-ivar">@files</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">DirHandler</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">dir</span>,<span class="ruby-keyword kw">false</span>)
|
|
16
|
+
45: <span class="ruby-ivar">@guard</span> = <span class="ruby-constant">Sync</span>.<span class="ruby-identifier">new</span>
|
|
17
|
+
46: <span class="ruby-ivar">@tick</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
|
|
18
|
+
47:
|
|
19
|
+
48: <span class="ruby-comment cmt"># register the requested mime types</span>
|
|
20
|
+
49: <span class="ruby-identifier">mime_map</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">DirHandler</span><span class="ruby-operator">::</span><span class="ruby-identifier">add_mime_type</span>(<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>) }
|
|
21
|
+
50: <span class="ruby-keyword kw">end</span></pre>
|
|
21
22
|
</body>
|
|
22
23
|
</html>
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>process (Mongrel::Rails::RailsHandler)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
12
|
+
<body class="standalone-code">
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 58</span>
|
|
14
|
+
58: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
|
|
15
|
+
59: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">closed?</span>
|
|
16
|
+
60: <span class="ruby-keyword kw">return</span>
|
|
17
|
+
61: <span class="ruby-keyword kw">end</span>
|
|
18
|
+
62:
|
|
19
|
+
63: <span class="ruby-identifier">path_info</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">PATH_INFO</span>]
|
|
20
|
+
64: <span class="ruby-identifier">page_cached</span> = <span class="ruby-identifier">path_info</span> <span class="ruby-operator">+</span> <span class="ruby-value str">".html"</span>
|
|
21
|
+
65: <span class="ruby-identifier">get_or_head</span> = <span class="ruby-ivar">@@file_only_methods</span>.<span class="ruby-identifier">include?</span> <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUEST_METHOD</span>]
|
|
22
|
+
66:
|
|
23
|
+
67: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">get_or_head</span> <span class="ruby-keyword kw">and</span> <span class="ruby-ivar">@files</span>.<span class="ruby-identifier">can_serve</span>(<span class="ruby-identifier">path_info</span>)
|
|
24
|
+
68: <span class="ruby-comment cmt"># File exists as-is so serve it up</span>
|
|
25
|
+
69: <span class="ruby-ivar">@files</span>.<span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>,<span class="ruby-identifier">response</span>)
|
|
26
|
+
70: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">get_or_head</span> <span class="ruby-keyword kw">and</span> <span class="ruby-ivar">@files</span>.<span class="ruby-identifier">can_serve</span>(<span class="ruby-identifier">page_cached</span>)
|
|
27
|
+
71: <span class="ruby-comment cmt"># possible cached page, serve it up</span>
|
|
28
|
+
72: <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">PATH_INFO</span>] = <span class="ruby-identifier">page_cached</span>
|
|
29
|
+
73: <span class="ruby-ivar">@files</span>.<span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>,<span class="ruby-identifier">response</span>)
|
|
30
|
+
74: <span class="ruby-keyword kw">else</span>
|
|
31
|
+
75: <span class="ruby-keyword kw">begin</span>
|
|
32
|
+
76: <span class="ruby-identifier">cgi</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">CGIWrapper</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
|
|
33
|
+
77: <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">handler</span> = <span class="ruby-keyword kw">self</span>
|
|
34
|
+
78: <span class="ruby-comment cmt"># we don't want the output to be really final until we're out of the lock</span>
|
|
35
|
+
79: <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">default_really_final</span> = <span class="ruby-keyword kw">false</span>
|
|
36
|
+
80:
|
|
37
|
+
81: <span class="ruby-identifier">log_threads_waiting_for</span>(<span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">"PATH_INFO"</span>]) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$mongrel_debug_client</span>
|
|
38
|
+
82:
|
|
39
|
+
83: <span class="ruby-ivar">@guard</span>.<span class="ruby-identifier">synchronize</span>(<span class="ruby-identifier">:EX</span>) {
|
|
40
|
+
84: <span class="ruby-constant">Dispatcher</span>.<span class="ruby-identifier">dispatch</span>(<span class="ruby-identifier">cgi</span>, <span class="ruby-constant">ActionController</span><span class="ruby-operator">::</span><span class="ruby-constant">CgiRequest</span><span class="ruby-operator">::</span><span class="ruby-constant">DEFAULT_SESSION_OPTIONS</span>, <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
|
|
41
|
+
85: }
|
|
42
|
+
86:
|
|
43
|
+
87: <span class="ruby-comment cmt"># This finalizes the output using the proper HttpResponse way</span>
|
|
44
|
+
88: <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">out</span>(<span class="ruby-value str">"text/html"</span>,<span class="ruby-keyword kw">true</span>) {<span class="ruby-value str">""</span>}
|
|
45
|
+
89: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Errno</span><span class="ruby-operator">::</span><span class="ruby-constant">EPIPE</span>
|
|
46
|
+
90: <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">close</span>
|
|
47
|
+
91: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Object</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">rails_error</span>
|
|
48
|
+
92: <span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">"#{Time.now}: Error calling Dispatcher.dispatch #{rails_error.inspect}"</span>
|
|
49
|
+
93: <span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">rails_error</span>.<span class="ruby-identifier">backtrace</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">"\n"</span>)
|
|
50
|
+
94: <span class="ruby-keyword kw">end</span>
|
|
51
|
+
95: <span class="ruby-keyword kw">end</span>
|
|
52
|
+
96: <span class="ruby-keyword kw">end</span></pre>
|
|
53
|
+
</body>
|
|
54
|
+
</html>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>log_threads_waiting_for (Mongrel::Rails::RailsHandler)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
12
|
+
<body class="standalone-code">
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 98</span>
|
|
14
|
+
98: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">log_threads_waiting_for</span>(<span class="ruby-identifier">event</span>)
|
|
15
|
+
99: <span class="ruby-keyword kw">if</span> <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span> <span class="ruby-operator">-</span> <span class="ruby-ivar">@tick</span> <span class="ruby-operator">></span> <span class="ruby-value">10</span>
|
|
16
|
+
100: <span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">"#{Time.now}: #{@guard.sync_waiting.length} threads sync_waiting for #{event}, #{self.listener.workers.list.length} still active in mongrel."</span>
|
|
17
|
+
101: <span class="ruby-ivar">@tick</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
|
|
18
|
+
102: <span class="ruby-keyword kw">end</span>
|
|
19
|
+
103: <span class="ruby-keyword kw">end</span></pre>
|
|
20
|
+
</body>
|
|
21
|
+
</html>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>reload! (Mongrel::Rails::RailsHandler)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
12
|
+
<body class="standalone-code">
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 107</span>
|
|
14
|
+
107: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reload!</span>
|
|
15
|
+
108: <span class="ruby-keyword kw">begin</span>
|
|
16
|
+
109: <span class="ruby-ivar">@guard</span>.<span class="ruby-identifier">synchronize</span>(<span class="ruby-identifier">:EX</span>) {
|
|
17
|
+
110: <span class="ruby-identifier">$"</span>.<span class="ruby-identifier">replace</span> <span class="ruby-identifier">$orig_dollar_quote</span>
|
|
18
|
+
111: <span class="ruby-constant">GC</span>.<span class="ruby-identifier">start</span>
|
|
19
|
+
112: <span class="ruby-constant">Dispatcher</span>.<span class="ruby-identifier">reset_application!</span>
|
|
20
|
+
113: <span class="ruby-constant">ActionController</span><span class="ruby-operator">::</span><span class="ruby-constant">Routing</span><span class="ruby-operator">::</span><span class="ruby-constant">Routes</span>.<span class="ruby-identifier">reload</span>
|
|
21
|
+
114: }
|
|
22
|
+
115: <span class="ruby-keyword kw">end</span>
|
|
23
|
+
116: <span class="ruby-keyword kw">end</span></pre>
|
|
24
|
+
</body>
|
|
25
|
+
</html>
|
|
@@ -107,8 +107,8 @@ Eg. /test/something?help=true&disclaimer=false
|
|
|
107
107
|
<h3 class="section-bar">Methods</h3>
|
|
108
108
|
|
|
109
109
|
<div class="name-list">
|
|
110
|
-
<a href="#
|
|
111
|
-
<a href="#
|
|
110
|
+
<a href="#M000128">new</a>
|
|
111
|
+
<a href="#M000129">process</a>
|
|
112
112
|
</div>
|
|
113
113
|
</div>
|
|
114
114
|
|
|
@@ -130,12 +130,12 @@ Eg. /test/something?help=true&disclaimer=false
|
|
|
130
130
|
<div id="methods">
|
|
131
131
|
<h3 class="section-bar">Public Class methods</h3>
|
|
132
132
|
|
|
133
|
-
<div id="method-
|
|
134
|
-
<a name="
|
|
133
|
+
<div id="method-M000128" class="method-detail">
|
|
134
|
+
<a name="M000128"></a>
|
|
135
135
|
|
|
136
136
|
<div class="method-heading">
|
|
137
|
-
<a href="RedirectHandler.src/
|
|
138
|
-
onclick="popupCode('RedirectHandler.src/
|
|
137
|
+
<a href="RedirectHandler.src/M000128.html" target="Code" class="method-signature"
|
|
138
|
+
onclick="popupCode('RedirectHandler.src/M000128.html');return false;">
|
|
139
139
|
<span class="method-name">new</span><span class="method-args">(pattern, replacement = nil, &block)</span>
|
|
140
140
|
</a>
|
|
141
141
|
</div>
|
|
@@ -155,12 +155,12 @@ replacement, block => One of them is used to replace the found text
|
|
|
155
155
|
|
|
156
156
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
157
157
|
|
|
158
|
-
<div id="method-
|
|
159
|
-
<a name="
|
|
158
|
+
<div id="method-M000129" class="method-detail">
|
|
159
|
+
<a name="M000129"></a>
|
|
160
160
|
|
|
161
161
|
<div class="method-heading">
|
|
162
|
-
<a href="RedirectHandler.src/
|
|
163
|
-
onclick="popupCode('RedirectHandler.src/
|
|
162
|
+
<a href="RedirectHandler.src/M000129.html" target="Code" class="method-signature"
|
|
163
|
+
onclick="popupCode('RedirectHandler.src/M000129.html');return false;">
|
|
164
164
|
<span class="method-name">process</span><span class="method-args">(request, response)</span>
|
|
165
165
|
</a>
|
|
166
166
|
</div>
|
|
@@ -10,13 +10,13 @@
|
|
|
10
10
|
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
11
|
</head>
|
|
12
12
|
<body class="standalone-code">
|
|
13
|
-
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 429</span>
|
|
14
|
+
429: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">replacement</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
|
15
|
+
430: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">replacement</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">block</span>
|
|
16
|
+
431: <span class="ruby-ivar">@replacement</span> = <span class="ruby-identifier">pattern</span>
|
|
17
|
+
432: <span class="ruby-keyword kw">else</span>
|
|
18
|
+
433: <span class="ruby-ivar">@pattern</span>, <span class="ruby-ivar">@replacement</span>, <span class="ruby-ivar">@block</span> = <span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">replacement</span>, <span class="ruby-identifier">block</span>
|
|
19
|
+
434: <span class="ruby-keyword kw">end</span>
|
|
20
|
+
435: <span class="ruby-keyword kw">end</span></pre>
|
|
21
21
|
</body>
|
|
22
22
|
</html>
|
|
@@ -10,18 +10,18 @@
|
|
|
10
10
|
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
11
|
</head>
|
|
12
12
|
<body class="standalone-code">
|
|
13
|
-
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 438</span>
|
|
14
|
+
438: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
|
|
15
|
+
439: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@pattern</span>
|
|
16
|
+
440: <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span>(<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">REDIRECT</span> <span class="ruby-operator">%</span> <span class="ruby-ivar">@replacement</span>)
|
|
17
|
+
441: <span class="ruby-keyword kw">else</span>
|
|
18
|
+
442: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@block</span>
|
|
19
|
+
443: <span class="ruby-identifier">new_path</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">'REQUEST_URI'</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-ivar">@pattern</span>, <span class="ruby-operator">&</span><span class="ruby-ivar">@block</span>)
|
|
20
|
+
444: <span class="ruby-keyword kw">else</span>
|
|
21
|
+
445: <span class="ruby-identifier">new_path</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">'REQUEST_URI'</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-ivar">@pattern</span>, <span class="ruby-ivar">@replacement</span>)
|
|
22
|
+
446: <span class="ruby-keyword kw">end</span>
|
|
23
|
+
447: <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span>(<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">REDIRECT</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">new_path</span>)
|
|
24
|
+
448: <span class="ruby-keyword kw">end</span>
|
|
25
|
+
449: <span class="ruby-keyword kw">end</span></pre>
|
|
26
26
|
</body>
|
|
27
27
|
</html>
|
|
@@ -90,7 +90,7 @@ in production.
|
|
|
90
90
|
<p>
|
|
91
91
|
You should pass the filter to <a
|
|
92
92
|
href="StatusHandler.html">StatusHandler</a> as <a
|
|
93
|
-
href="StatusHandler.html#
|
|
93
|
+
href="StatusHandler.html#M000066">StatusHandler.new</a>(:stats_filter =>
|
|
94
94
|
stats). This lets you then hit the status URI you want and get these stats
|
|
95
95
|
from a browser.
|
|
96
96
|
</p>
|
|
@@ -115,9 +115,9 @@ as a measure of time between requests.
|
|
|
115
115
|
<h3 class="section-bar">Methods</h3>
|
|
116
116
|
|
|
117
117
|
<div class="name-list">
|
|
118
|
-
<a href="#
|
|
119
|
-
<a href="#
|
|
120
|
-
<a href="#
|
|
118
|
+
<a href="#M000127">dump</a>
|
|
119
|
+
<a href="#M000125">new</a>
|
|
120
|
+
<a href="#M000126">process</a>
|
|
121
121
|
</div>
|
|
122
122
|
</div>
|
|
123
123
|
|
|
@@ -152,12 +152,12 @@ as a measure of time between requests.
|
|
|
152
152
|
<div id="methods">
|
|
153
153
|
<h3 class="section-bar">Public Class methods</h3>
|
|
154
154
|
|
|
155
|
-
<div id="method-
|
|
156
|
-
<a name="
|
|
155
|
+
<div id="method-M000125" class="method-detail">
|
|
156
|
+
<a name="M000125"></a>
|
|
157
157
|
|
|
158
158
|
<div class="method-heading">
|
|
159
|
-
<a href="StatisticsFilter.src/
|
|
160
|
-
onclick="popupCode('StatisticsFilter.src/
|
|
159
|
+
<a href="StatisticsFilter.src/M000125.html" target="Code" class="method-signature"
|
|
160
|
+
onclick="popupCode('StatisticsFilter.src/M000125.html');return false;">
|
|
161
161
|
<span class="method-name">new</span><span class="method-args">(ops={})</span>
|
|
162
162
|
</a>
|
|
163
163
|
</div>
|
|
@@ -168,12 +168,12 @@ as a measure of time between requests.
|
|
|
168
168
|
|
|
169
169
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
170
170
|
|
|
171
|
-
<div id="method-
|
|
172
|
-
<a name="
|
|
171
|
+
<div id="method-M000127" class="method-detail">
|
|
172
|
+
<a name="M000127"></a>
|
|
173
173
|
|
|
174
174
|
<div class="method-heading">
|
|
175
|
-
<a href="StatisticsFilter.src/
|
|
176
|
-
onclick="popupCode('StatisticsFilter.src/
|
|
175
|
+
<a href="StatisticsFilter.src/M000127.html" target="Code" class="method-signature"
|
|
176
|
+
onclick="popupCode('StatisticsFilter.src/M000127.html');return false;">
|
|
177
177
|
<span class="method-name">dump</span><span class="method-args">()</span>
|
|
178
178
|
</a>
|
|
179
179
|
</div>
|
|
@@ -182,12 +182,12 @@ as a measure of time between requests.
|
|
|
182
182
|
</div>
|
|
183
183
|
</div>
|
|
184
184
|
|
|
185
|
-
<div id="method-
|
|
186
|
-
<a name="
|
|
185
|
+
<div id="method-M000126" class="method-detail">
|
|
186
|
+
<a name="M000126"></a>
|
|
187
187
|
|
|
188
188
|
<div class="method-heading">
|
|
189
|
-
<a href="StatisticsFilter.src/
|
|
190
|
-
onclick="popupCode('StatisticsFilter.src/
|
|
189
|
+
<a href="StatisticsFilter.src/M000126.html" target="Code" class="method-signature"
|
|
190
|
+
onclick="popupCode('StatisticsFilter.src/M000126.html');return false;">
|
|
191
191
|
<span class="method-name">process</span><span class="method-args">(request, response)</span>
|
|
192
192
|
</a>
|
|
193
193
|
</div>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>new (Mongrel::StatisticsFilter)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
12
|
+
<body class="standalone-code">
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 324</span>
|
|
14
|
+
324: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">ops</span>={})
|
|
15
|
+
325: <span class="ruby-ivar">@sample_rate</span> = <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:sample_rate</span>] <span class="ruby-operator">||</span> <span class="ruby-value">300</span>
|
|
16
|
+
326:
|
|
17
|
+
327: <span class="ruby-ivar">@processors</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"processors"</span>)
|
|
18
|
+
328: <span class="ruby-ivar">@reqsize</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"request Kb"</span>)
|
|
19
|
+
329: <span class="ruby-ivar">@headcount</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"req param count"</span>)
|
|
20
|
+
330: <span class="ruby-ivar">@respsize</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"response Kb"</span>)
|
|
21
|
+
331: <span class="ruby-ivar">@interreq</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">"inter-request time"</span>)
|
|
22
|
+
332: <span class="ruby-keyword kw">end</span></pre>
|
|
23
|
+
</body>
|
|
24
|
+
</html>
|
|
@@ -10,15 +10,15 @@
|
|
|
10
10
|
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
11
|
</head>
|
|
12
12
|
<body class="standalone-code">
|
|
13
|
-
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 335</span>
|
|
14
|
+
335: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
|
|
15
|
+
336: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">rand</span>(<span class="ruby-ivar">@sample_rate</span>)<span class="ruby-operator">+</span><span class="ruby-value">1</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@sample_rate</span>
|
|
16
|
+
337: <span class="ruby-ivar">@processors</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">listener</span>.<span class="ruby-identifier">workers</span>.<span class="ruby-identifier">list</span>.<span class="ruby-identifier">length</span>)
|
|
17
|
+
338: <span class="ruby-ivar">@headcount</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>.<span class="ruby-identifier">length</span>)
|
|
18
|
+
339: <span class="ruby-ivar">@reqsize</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">request</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">/</span> <span class="ruby-value">1024.0</span>)
|
|
19
|
+
340: <span class="ruby-ivar">@respsize</span>.<span class="ruby-identifier">sample</span>((<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">length</span>) <span class="ruby-operator">/</span> <span class="ruby-value">1024.0</span>)
|
|
20
|
+
341: <span class="ruby-keyword kw">end</span>
|
|
21
|
+
342: <span class="ruby-ivar">@interreq</span>.<span class="ruby-identifier">tick</span>
|
|
22
|
+
343: <span class="ruby-keyword kw">end</span></pre>
|
|
23
23
|
</body>
|
|
24
24
|
</html>
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
11
|
</head>
|
|
12
12
|
<body class="standalone-code">
|
|
13
|
-
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
<pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 345</span>
|
|
14
|
+
345: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dump</span>
|
|
15
|
+
346: <span class="ruby-node">"#{@processors.to_s}\n#{@reqsize.to_s}\n#{@headcount.to_s}\n#{@respsize.to_s}\n#{@interreq.to_s}"</span>
|
|
16
|
+
347: <span class="ruby-keyword kw">end</span></pre>
|
|
17
17
|
</body>
|
|
18
18
|
</html>
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
|
|
6
6
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
7
7
|
<head>
|
|
8
|
-
<title>Class: Stats</title>
|
|
8
|
+
<title>Class: Mongrel::Stats</title>
|
|
9
9
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
10
|
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
11
|
-
<link rel="stylesheet" href="
|
|
11
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
12
12
|
<script type="text/javascript">
|
|
13
13
|
// <![CDATA[
|
|
14
14
|
|
|
@@ -50,12 +50,12 @@
|
|
|
50
50
|
<table class="header-table">
|
|
51
51
|
<tr class="top-aligned-row">
|
|
52
52
|
<td><strong>Class</strong></td>
|
|
53
|
-
<td class="class-name-in-header">Stats</td>
|
|
53
|
+
<td class="class-name-in-header">Mongrel::Stats</td>
|
|
54
54
|
</tr>
|
|
55
55
|
<tr class="top-aligned-row">
|
|
56
56
|
<td><strong>In:</strong></td>
|
|
57
57
|
<td>
|
|
58
|
-
<a href="
|
|
58
|
+
<a href="../../files/lib/mongrel/stats_rb.html">
|
|
59
59
|
lib/mongrel/stats.rb
|
|
60
60
|
</a>
|
|
61
61
|
<br />
|
|
@@ -78,22 +78,6 @@
|
|
|
78
78
|
|
|
79
79
|
<div id="contextContent">
|
|
80
80
|
|
|
81
|
-
<div id="description">
|
|
82
|
-
<p>
|
|
83
|
-
A very simple little class for doing some basic fast statistics sampling.
|
|
84
|
-
You feed it either samples of numeric data you want measured or you call <a
|
|
85
|
-
href="Stats.html#M000012">Stats.tick</a> to get it to add a time delta
|
|
86
|
-
between the last time you called it. When you’re done either call
|
|
87
|
-
sum, sumsq, n, min, max, mean or sd to get the information. The other
|
|
88
|
-
option is to just call dump and see everything.
|
|
89
|
-
</p>
|
|
90
|
-
<p>
|
|
91
|
-
It does all of this very fast and doesn’t take up any memory since
|
|
92
|
-
the samples are not stored but instead all the values are calculated on the
|
|
93
|
-
fly.
|
|
94
|
-
</p>
|
|
95
|
-
|
|
96
|
-
</div>
|
|
97
81
|
|
|
98
82
|
|
|
99
83
|
</div>
|
|
@@ -102,14 +86,14 @@ fly.
|
|
|
102
86
|
<h3 class="section-bar">Methods</h3>
|
|
103
87
|
|
|
104
88
|
<div class="name-list">
|
|
105
|
-
<a href="#
|
|
106
|
-
<a href="#
|
|
107
|
-
<a href="#
|
|
108
|
-
<a href="#
|
|
109
|
-
<a href="#
|
|
110
|
-
<a href="#
|
|
111
|
-
<a href="#
|
|
112
|
-
<a href="#
|
|
89
|
+
<a href="#M000139">dump</a>
|
|
90
|
+
<a href="#M000141">mean</a>
|
|
91
|
+
<a href="#M000136">new</a>
|
|
92
|
+
<a href="#M000137">reset</a>
|
|
93
|
+
<a href="#M000138">sample</a>
|
|
94
|
+
<a href="#M000142">sd</a>
|
|
95
|
+
<a href="#M000143">tick</a>
|
|
96
|
+
<a href="#M000140">to_s</a>
|
|
113
97
|
</div>
|
|
114
98
|
</div>
|
|
115
99
|
|
|
@@ -164,12 +148,12 @@ fly.
|
|
|
164
148
|
<div id="methods">
|
|
165
149
|
<h3 class="section-bar">Public Class methods</h3>
|
|
166
150
|
|
|
167
|
-
<div id="method-
|
|
168
|
-
<a name="
|
|
151
|
+
<div id="method-M000136" class="method-detail">
|
|
152
|
+
<a name="M000136"></a>
|
|
169
153
|
|
|
170
154
|
<div class="method-heading">
|
|
171
|
-
<a href="Stats.src/
|
|
172
|
-
onclick="popupCode('Stats.src/
|
|
155
|
+
<a href="Stats.src/M000136.html" target="Code" class="method-signature"
|
|
156
|
+
onclick="popupCode('Stats.src/M000136.html');return false;">
|
|
173
157
|
<span class="method-name">new</span><span class="method-args">(name)</span>
|
|
174
158
|
</a>
|
|
175
159
|
</div>
|
|
@@ -180,12 +164,12 @@ fly.
|
|
|
180
164
|
|
|
181
165
|
<h3 class="section-bar">Public Instance methods</h3>
|
|
182
166
|
|
|
183
|
-
<div id="method-
|
|
184
|
-
<a name="
|
|
167
|
+
<div id="method-M000139" class="method-detail">
|
|
168
|
+
<a name="M000139"></a>
|
|
185
169
|
|
|
186
170
|
<div class="method-heading">
|
|
187
|
-
<a href="Stats.src/
|
|
188
|
-
onclick="popupCode('Stats.src/
|
|
171
|
+
<a href="Stats.src/M000139.html" target="Code" class="method-signature"
|
|
172
|
+
onclick="popupCode('Stats.src/M000139.html');return false;">
|
|
189
173
|
<span class="method-name">dump</span><span class="method-args">(msg = "", out=STDERR)</span>
|
|
190
174
|
</a>
|
|
191
175
|
</div>
|
|
@@ -198,12 +182,12 @@ message.
|
|
|
198
182
|
</div>
|
|
199
183
|
</div>
|
|
200
184
|
|
|
201
|
-
<div id="method-
|
|
202
|
-
<a name="
|
|
185
|
+
<div id="method-M000141" class="method-detail">
|
|
186
|
+
<a name="M000141"></a>
|
|
203
187
|
|
|
204
188
|
<div class="method-heading">
|
|
205
|
-
<a href="Stats.src/
|
|
206
|
-
onclick="popupCode('Stats.src/
|
|
189
|
+
<a href="Stats.src/M000141.html" target="Code" class="method-signature"
|
|
190
|
+
onclick="popupCode('Stats.src/M000141.html');return false;">
|
|
207
191
|
<span class="method-name">mean</span><span class="method-args">()</span>
|
|
208
192
|
</a>
|
|
209
193
|
</div>
|
|
@@ -215,12 +199,12 @@ Calculates and returns the mean for the data passed so far.
|
|
|
215
199
|
</div>
|
|
216
200
|
</div>
|
|
217
201
|
|
|
218
|
-
<div id="method-
|
|
219
|
-
<a name="
|
|
202
|
+
<div id="method-M000137" class="method-detail">
|
|
203
|
+
<a name="M000137"></a>
|
|
220
204
|
|
|
221
205
|
<div class="method-heading">
|
|
222
|
-
<a href="Stats.src/
|
|
223
|
-
onclick="popupCode('Stats.src/
|
|
206
|
+
<a href="Stats.src/M000137.html" target="Code" class="method-signature"
|
|
207
|
+
onclick="popupCode('Stats.src/M000137.html');return false;">
|
|
224
208
|
<span class="method-name">reset</span><span class="method-args">()</span>
|
|
225
209
|
</a>
|
|
226
210
|
</div>
|
|
@@ -232,12 +216,12 @@ Resets the internal counters so you can start sampling again.
|
|
|
232
216
|
</div>
|
|
233
217
|
</div>
|
|
234
218
|
|
|
235
|
-
<div id="method-
|
|
236
|
-
<a name="
|
|
219
|
+
<div id="method-M000138" class="method-detail">
|
|
220
|
+
<a name="M000138"></a>
|
|
237
221
|
|
|
238
222
|
<div class="method-heading">
|
|
239
|
-
<a href="Stats.src/
|
|
240
|
-
onclick="popupCode('Stats.src/
|
|
223
|
+
<a href="Stats.src/M000138.html" target="Code" class="method-signature"
|
|
224
|
+
onclick="popupCode('Stats.src/M000138.html');return false;">
|
|
241
225
|
<span class="method-name">sample</span><span class="method-args">(s)</span>
|
|
242
226
|
</a>
|
|
243
227
|
</div>
|
|
@@ -249,12 +233,12 @@ Adds a sampling to the calculations.
|
|
|
249
233
|
</div>
|
|
250
234
|
</div>
|
|
251
235
|
|
|
252
|
-
<div id="method-
|
|
253
|
-
<a name="
|
|
236
|
+
<div id="method-M000142" class="method-detail">
|
|
237
|
+
<a name="M000142"></a>
|
|
254
238
|
|
|
255
239
|
<div class="method-heading">
|
|
256
|
-
<a href="Stats.src/
|
|
257
|
-
onclick="popupCode('Stats.src/
|
|
240
|
+
<a href="Stats.src/M000142.html" target="Code" class="method-signature"
|
|
241
|
+
onclick="popupCode('Stats.src/M000142.html');return false;">
|
|
258
242
|
<span class="method-name">sd</span><span class="method-args">()</span>
|
|
259
243
|
</a>
|
|
260
244
|
</div>
|
|
@@ -266,12 +250,12 @@ Calculates the standard deviation of the data so far.
|
|
|
266
250
|
</div>
|
|
267
251
|
</div>
|
|
268
252
|
|
|
269
|
-
<div id="method-
|
|
270
|
-
<a name="
|
|
253
|
+
<div id="method-M000143" class="method-detail">
|
|
254
|
+
<a name="M000143"></a>
|
|
271
255
|
|
|
272
256
|
<div class="method-heading">
|
|
273
|
-
<a href="Stats.src/
|
|
274
|
-
onclick="popupCode('Stats.src/
|
|
257
|
+
<a href="Stats.src/M000143.html" target="Code" class="method-signature"
|
|
258
|
+
onclick="popupCode('Stats.src/M000143.html');return false;">
|
|
275
259
|
<span class="method-name">tick</span><span class="method-args">()</span>
|
|
276
260
|
</a>
|
|
277
261
|
</div>
|
|
@@ -292,12 +276,12 @@ An example is:
|
|
|
292
276
|
</div>
|
|
293
277
|
</div>
|
|
294
278
|
|
|
295
|
-
<div id="method-
|
|
296
|
-
<a name="
|
|
279
|
+
<div id="method-M000140" class="method-detail">
|
|
280
|
+
<a name="M000140"></a>
|
|
297
281
|
|
|
298
282
|
<div class="method-heading">
|
|
299
|
-
<a href="Stats.src/
|
|
300
|
-
onclick="popupCode('Stats.src/
|
|
283
|
+
<a href="Stats.src/M000140.html" target="Code" class="method-signature"
|
|
284
|
+
onclick="popupCode('Stats.src/M000140.html');return false;">
|
|
301
285
|
<span class="method-name">to_s</span><span class="method-args">()</span>
|
|
302
286
|
</a>
|
|
303
287
|
</div>
|