aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Servers/HttpServer (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-09-22Make BaseHttpServer throws say something useful.Diva Canto1-2/+2
2012-09-21Comment out the long unused afaik HTTP agent handlers.Justin Clark-Casey (justincc)2-84/+84
As far as I know, this was only used by the IBM Rest modules, much of which has been commented out for a very long time now. Other similar code uses HTTP or stream handlers instead. So commenting this out to reduce code complexity and the need to make this facility consistent with the others where it may not be used anyway. If this facility is actually being used then please notify me or uncomment it if you are core.
2012-09-21Add request number counting to incoming HTTP requests in the same way that ↵Justin Clark-Casey (justincc)1-18/+41
this was already being done for outgoing HTTP requests. This allows us to associate debug logging messages with the right request. It also allows us to put a request number on 'long request' logging even if other debug logging is not enabled, which gives us some idea of whether every request is suffering this problem or only some. This is a separate internal number not associated with any incoming number in the opensim-request-id header, this will be clarified when logging of this incoming request number is re-enabled. This commit also adds port number to HTTP IN logging to allow us to distinguish between different request numbers on different ports.
2012-09-20Insert a new log level 4 for HTTP IN and HTTP OUT that will log how long the ↵Justin Clark-Casey (justincc)1-15/+32
request took. This is only printed if debug http level >= 4 and the request didn't take more than the time considered 'long', in which case the existing log message is printed. This displaces the previous log levels 4 and 5 which are now 5 and 6 respectively.
2012-09-20Add ability to turn on/off logging of outgoing HTTP requests flowing through ↵Justin Clark-Casey (justincc)1-5/+5
WebUtil. This is for debugging purposes. This is controlled via the "debug http" command which can already log incoming requests. This now gains a mandatory parameter of in, out or all to control what is logged. Log messages are also shortened and labelled and HTTP IN or HTTP OUT to be consistent with existing UDP PACKET IN and PACKET OUT messages.
2012-09-14Revamp the HTTP textures handler to allow a maximum of four fetchesMelanie3-17/+36
at any time and to drop requests for avatars n longer in the scene
2012-09-14Allow setting max connections for an endpointMelanie1-1/+1
2012-09-12Fix bug in logging sample input at debug http level 4.Justin Clark-Casey (justincc)1-1/+1
Also converts newlines to "\n" text.
2012-09-11Add levels 4 and 5 to "debug http" console command that will log a sample of ↵Justin Clark-Casey (justincc)1-12/+56
incoming request data and the entire incoming data respectively. See "help debug http" for more details.
2012-09-10add a extra httppool thread to compensate for webfetchinventoryUbitUmarov1-1/+2
2012-08-24Fix background inventory loading (Viewer 3) so it won't lag out the simMelanie2-2/+4
2012-07-25Move Watchdog and MemoryWatchdog classes into OpenSim.Framework.Monitoring ↵Justin Clark-Casey (justincc)3-0/+3
with other monitoring code from OpenSim.Framework
2012-07-17fix PollServiceRequestManagerUbitUmarov1-10/+47
2012-07-17Replace PollServiceRequestManager with older version, add extra logging toMelanie1-7/+6
event exceptions to see call path leading up to it.
2012-07-15Eliminate a spurious exception report when a https url is accessed with a wrongMelanie1-0/+2
CN
2012-07-06Convert the slow request queue into a regular queue and add some cleanupMelanie1-4/+18
and locking.
2012-07-05Fix the boo-booMelanie1-3/+3
2012-07-05Add an EventType enum and Type field to the poll service event args. This allowsMelanie2-11/+34
the manager to tell what type of event it is. All events except for lsl http in go to the "slow queue" which is run once per second as before.
2012-07-04 use the pollEvent timeout paramenter on poolingUbitUmarov1-4/+7
2012-07-04 added a timeout paramenter to PollServiceEventArgs, so each type can define ↵UbitUmarov1-1/+4
it's timeout
2012-07-04*test2* http poll: increased again the pool rate do 10/s but increased ↵UbitUmarov1-2/+2
timeout to 1s. So data there is less delay when there is new data, but enought waiting time for it to be avaiable
2012-07-04*test* slow http retries pool rate to original 1sUbitUmarov1-1/+1
2012-07-01*TO CHECK/REVIEW/REVERT/TEST whatever* pollService new requests get enqueued ↵UbitUmarov2-0/+206
to unified requests queue directly. Retries get into that every 100ms. 3 working threads as before plus another that only does retries timming.
2012-06-26Add an event to the poll service manager thread to allow starting itMelanie2-4/+14
when needed rather than once per second. That is just too slow!
2012-06-22Avoid a race condition where an incoming request to a script external URL ↵Justin Clark-Casey (justincc)2-5/+11
can trigger an exception is the URL was being removed at the same time. This involves three steps 1) Return gracefully in UrlModule.HttpRequestHandler() instead of throwing an exception when the url cannot be found in its index 2) Return true instead of false in HasEvents() if no matching request is found in the map. This call will only happen in the first place for raced requests. 3) Return a 404 in GetEvents() if the request is not in the index, rather than a blank 200 OK. Many thanks to Tom Haines in http://opensimulator.org/mantis/view.php?id=6051 for doing some of the work on this.
2012-06-16Fix bug introduced in commit c6e3752 (13 Jun 2012) where poll responses ↵Justin Clark-Casey (justincc)1-3/+1
would always return OK even if some other status code had been set
2012-06-15Make the "debug http" command available for robust as well as the simulator. ↵Justin Clark-Casey (justincc)1-0/+3
This allows one to see incoming requests as they happen. This required making everything use the common MainServer class for registering and retrieving http servers, rather than duplicate structures.
2012-06-15Add main instance to internal MainServer.m_Servers list to simplify internal ↵Justin Clark-Casey (justincc)1-8/+0
logic. This does require the server to be added before it is set as the main Instance
2012-06-15When setting debug http level, do this for all known http servers, not just ↵Justin Clark-Casey (justincc)1-10/+10
the main instance.
2012-06-14Shuffle "debug http" levels so that 1 and 2 now cause different levels of ↵Justin Clark-Casey (justincc)1-8/+27
warn to be logged if we receive invalid xml for xmlrpc.
2012-06-14Fix a regression in BaseHttpServer.HandleXmlRpcRequests() from recent c6e3752Justin Clark-Casey (justincc)1-1/+1
Accidentally make responseString null by default instead of String.Empty. It needs to be something in case the XmlRpcRequest deserialize throws an exception due to bad xml (a failure which we silently swallow!)
2012-06-13Don't include time to transmit response back to requester when assessing ↵Justin Clark-Casey (justincc)5-314/+169
slow handling of requests. This is to avoid logging a 'slow' request when the source of delay is the viewer in processing a response. This is not something we can do much about on the server end - it's server-side delay that we're interested in. To ensure consistency, this commit also had to refactor and simplify inbound non-poll network request handling, though there should be no functional change. IOSHttpResponse no longer exposes the Send() method, only classes in OpenSim.Framework.Servers.HttpServer should be doing this. Only the GetTextureHandler was sending its own response. Now it leaves this to BaseHttpServer, like all other core handlers.
2012-06-07Make change to fix Windows buildsBlueWall1-1/+1
2012-06-07Allow the thread watchdog to accept an alarm method that is invoked if the ↵Justin Clark-Casey (justincc)1-0/+2
timeout is breached. This alarm can then invoke this to log extra information. This is used in LLUDPServer to show which client was being processed when incoming and outgoing udp watchdog alarms are triggered.
2012-05-24adding status codes from rfc 6585SignpostMarv1-2/+22
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-05-24porting IDE tooltip-friendly documentation tweaks from Aurora-SimSignpostMarv1-134/+223
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-05-09Improve logging on the prim inventory script asset request path for future use.Justin Clark-Casey (justincc)1-2/+2
This adds name and description of the request handler to http request logging when DebugLevel >= 1
2012-05-07Log the full exception when errors occur in BaseHttpServerOren Hurvitz1-19/+19
2012-05-04minor: Tweak BaseHttpServer message to make it clear that this relates to ↵Justin Clark-Casey (justincc)1-1/+1
slow handling of inbound requests.
2012-05-03Implement optional name and description on http stream handlers so that we ↵Justin Clark-Casey (justincc)9-35/+88
can relate a slow request to what the handler actually does and the agent it serves, if applicable. This is most useful for capabilities where the url is not self-describing.
2012-04-27Revert "Log the full exception when errors occur in BaseHttpServer"Justin Clark-Casey (justincc)1-19/+19
This reverts commit e31e7c68c8abfd61fed6dabac5403d8adf42ae87. Applied for patch assessment and accidentally committed too early.
2012-04-27Log the full exception when errors occur in BaseHttpServerOren Hurvitz1-19/+19
2012-04-20Add more exception detail to Exception and IOException throws in ↵Justin Clark-Casey (justincc)1-2/+2
BaseHttpServer.HandleRequest()
2012-04-06Thank you, BaseHttpServer, for telling me where things go wrong.Diva Canto1-2/+2
2012-02-24Stop spurious scene loop startup timeout alarms for scenes with many prims.Justin Clark-Casey (justincc)1-0/+2
On the first frame, all startup scene objects are added to the physics scene. This can cause a considerable delay, so we don't start raising the alarm on scene loop timeouts until the second frame. This commit also slightly changes the behaviour of timeout reporting. Previously, a report was made for the very first timed out thread, ignoring all others until the next watchdog check. Instead, we now report every timed out thread, though we still only do this once no matter how long the timeout.
2011-12-07Stop also adding an ordinary http handler when we set up a poll http handler.Justin Clark-Casey (justincc)2-11/+5
It appears that this is entirely unnecessary since the poll http handlers are dealt with on a separate code path.
2011-12-05Implement IOSHttpRequest and IOSHttpResponse http interfaces and use instead ↵Justin Clark-Casey (justincc)11-14/+209
of OSHttpRequest/OSHttpResponse. This is required for the substitution of different HTTP servers or the newer HttpServer.dll without having to commit to a particular implementation. This is also required to write regression tests that involve the HTTP layer. If you need to recompile, all you need to do is replace OSHttpRequest/OSHttpResponse references with IOSHttpRequest/IOSHttpResponse.
2011-11-29On "show caps", stop excluding the seed cap but do exclude it elsewhereJustin Clark-Casey (justincc)1-1/+3
2011-11-29With "debug http 1", show the path with the query string instead of just the ↵Justin Clark-Casey (justincc)1-21/+21
path. Also simplifies debug levels to just 0 and 1
2011-11-29Add "debug http" command for currently simple extra debug logging of ↵Justin Clark-Casey (justincc)1-12/+43
non-event queue inbound http requests to a simulator