aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs59
-rw-r--r--OpenSim/Framework/WebUtil.cs2
2 files changed, 42 insertions, 19 deletions
diff --git a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
index 4e04dd8..05c2d53 100644
--- a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
+++ b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
@@ -62,6 +62,15 @@ namespace OpenSim.Framework.Servers.HttpServer
62 /// </value> 62 /// </value>
63 public int DebugLevel { get; set; } 63 public int DebugLevel { get; set; }
64 64
65 /// <summary>
66 /// Request number for diagnostic purposes.
67 /// </summary>
68 /// <remarks>
69 /// This is an internal number. In some debug situations an external number may also be supplied in the
70 /// opensim-request-id header but we are not currently logging this.
71 /// </remarks>
72 public int RequestNumber { get; private set; }
73
65 private volatile int NotSocketErrors = 0; 74 private volatile int NotSocketErrors = 0;
66 public volatile bool HTTPDRunning = false; 75 public volatile bool HTTPDRunning = false;
67 76
@@ -302,6 +311,8 @@ namespace OpenSim.Framework.Servers.HttpServer
302 311
303 private void OnRequest(object source, RequestEventArgs args) 312 private void OnRequest(object source, RequestEventArgs args)
304 { 313 {
314 RequestNumber++;
315
305 try 316 try
306 { 317 {
307 IHttpClientContext context = (IHttpClientContext)source; 318 IHttpClientContext context = (IHttpClientContext)source;
@@ -411,7 +422,6 @@ namespace OpenSim.Framework.Servers.HttpServer
411 string requestMethod = request.HttpMethod; 422 string requestMethod = request.HttpMethod;
412 string uriString = request.RawUrl; 423 string uriString = request.RawUrl;
413 424
414// string reqnum = "unknown";
415 int requestStartTick = Environment.TickCount; 425 int requestStartTick = Environment.TickCount;
416 426
417 // Will be adjusted later on. 427 // Will be adjusted later on.
@@ -535,8 +545,8 @@ namespace OpenSim.Framework.Servers.HttpServer
535 545
536 if (DebugLevel >= 3) 546 if (DebugLevel >= 3)
537 m_log.DebugFormat( 547 m_log.DebugFormat(
538 "[BASE HTTP SERVER]: HTTP IN {0} content type handler {1} {2} from {3}", 548 "[BASE HTTP SERVER]: HTTP IN {0} :{1} {2} content type handler {3} {4} from {5}",
539 request.ContentType, request.HttpMethod, request.Url.PathAndQuery, request.RemoteIPEndPoint); 549 RequestNumber, Port, request.ContentType, request.HttpMethod, request.Url.PathAndQuery, request.RemoteIPEndPoint);
540 550
541 buffer = HandleHTTPRequest(request, response); 551 buffer = HandleHTTPRequest(request, response);
542 break; 552 break;
@@ -547,8 +557,8 @@ namespace OpenSim.Framework.Servers.HttpServer
547 557
548 if (DebugLevel >= 3) 558 if (DebugLevel >= 3)
549 m_log.DebugFormat( 559 m_log.DebugFormat(
550 "[BASE HTTP SERVER]: HTTP IN {0} content type handler {1} {2} from {3}", 560 "[BASE HTTP SERVER]: HTTP IN {0} :{1} {2} content type handler {3} {4} from {5}",
551 request.ContentType, request.HttpMethod, request.Url.PathAndQuery, request.RemoteIPEndPoint); 561 RequestNumber, Port, request.ContentType, request.HttpMethod, request.Url.PathAndQuery, request.RemoteIPEndPoint);
552 562
553 buffer = HandleLLSDRequests(request, response); 563 buffer = HandleLLSDRequests(request, response);
554 break; 564 break;
@@ -641,7 +651,8 @@ namespace OpenSim.Framework.Servers.HttpServer
641 if (tickdiff > 3000) 651 if (tickdiff > 3000)
642 { 652 {
643 m_log.InfoFormat( 653 m_log.InfoFormat(
644 "[BASE HTTP SERVER]: Slow handling of {0} {1} {2} {3} from {4} took {5}ms", 654 "[BASE HTTP SERVER]: Slow handling of {0} {1} {2} {3} {4} from {5} took {6}ms",
655 RequestNumber,
645 requestMethod, 656 requestMethod,
646 uriString, 657 uriString,
647 requestHandler != null ? requestHandler.Name : "", 658 requestHandler != null ? requestHandler.Name : "",
@@ -652,12 +663,9 @@ namespace OpenSim.Framework.Servers.HttpServer
652 else if (DebugLevel >= 4) 663 else if (DebugLevel >= 4)
653 { 664 {
654 m_log.DebugFormat( 665 m_log.DebugFormat(
655 "[BASE HTTP SERVER]: HTTP IN {0} {1} {2} {3} from {4} took {5}ms", 666 "[BASE HTTP SERVER]: HTTP IN {0} :{1} took {2}ms",
656 requestMethod, 667 RequestNumber,
657 uriString, 668 Port,
658 requestHandler != null ? requestHandler.Name : "",
659 requestHandler != null ? requestHandler.Description : "",
660 request.RemoteIPEndPoint,
661 tickdiff); 669 tickdiff);
662 } 670 }
663 } 671 }
@@ -666,8 +674,14 @@ namespace OpenSim.Framework.Servers.HttpServer
666 private void LogIncomingToStreamHandler(OSHttpRequest request, IRequestHandler requestHandler) 674 private void LogIncomingToStreamHandler(OSHttpRequest request, IRequestHandler requestHandler)
667 { 675 {
668 m_log.DebugFormat( 676 m_log.DebugFormat(
669 "[BASE HTTP SERVER]: HTTP IN stream handler {0} {1} {2} {3} from {4}", 677 "[BASE HTTP SERVER]: HTTP IN {0} :{1} stream handler {2} {3} {4} {5} from {6}",
670 request.HttpMethod, request.Url.PathAndQuery, requestHandler.Name, requestHandler.Description, request.RemoteIPEndPoint); 678 RequestNumber,
679 Port,
680 request.HttpMethod,
681 request.Url.PathAndQuery,
682 requestHandler.Name,
683 requestHandler.Description,
684 request.RemoteIPEndPoint);
671 685
672 if (DebugLevel >= 5) 686 if (DebugLevel >= 5)
673 LogIncomingInDetail(request); 687 LogIncomingInDetail(request);
@@ -676,8 +690,13 @@ namespace OpenSim.Framework.Servers.HttpServer
676 private void LogIncomingToContentTypeHandler(OSHttpRequest request) 690 private void LogIncomingToContentTypeHandler(OSHttpRequest request)
677 { 691 {
678 m_log.DebugFormat( 692 m_log.DebugFormat(
679 "[BASE HTTP SERVER]: HTTP IN {0} content type handler {1} {2} from {3}", 693 "[BASE HTTP SERVER]: HTTP IN {0} :{1} {2} content type handler {3} {4} from {5}",
680 request.ContentType, request.HttpMethod, request.Url.PathAndQuery, request.RemoteIPEndPoint); 694 RequestNumber,
695 Port,
696 request.ContentType,
697 request.HttpMethod,
698 request.Url.PathAndQuery,
699 request.RemoteIPEndPoint);
681 700
682 if (DebugLevel >= 5) 701 if (DebugLevel >= 5)
683 LogIncomingInDetail(request); 702 LogIncomingInDetail(request);
@@ -686,8 +705,12 @@ namespace OpenSim.Framework.Servers.HttpServer
686 private void LogIncomingToXmlRpcHandler(OSHttpRequest request) 705 private void LogIncomingToXmlRpcHandler(OSHttpRequest request)
687 { 706 {
688 m_log.DebugFormat( 707 m_log.DebugFormat(
689 "[BASE HTTP SERVER]: HTTP IN assumed generic XMLRPC request {0} {1} from {2}", 708 "[BASE HTTP SERVER]: HTTP IN {0} :{1} assumed generic XMLRPC request {2} {3} from {4}",
690 request.HttpMethod, request.Url.PathAndQuery, request.RemoteIPEndPoint); 709 RequestNumber,
710 Port,
711 request.HttpMethod,
712 request.Url.PathAndQuery,
713 request.RemoteIPEndPoint);
691 714
692 if (DebugLevel >= 5) 715 if (DebugLevel >= 5)
693 LogIncomingInDetail(request); 716 LogIncomingInDetail(request);
diff --git a/OpenSim/Framework/WebUtil.cs b/OpenSim/Framework/WebUtil.cs
index 64d61f1..e095402 100644
--- a/OpenSim/Framework/WebUtil.cs
+++ b/OpenSim/Framework/WebUtil.cs
@@ -64,7 +64,7 @@ namespace OpenSim.Framework
64 /// <summary> 64 /// <summary>
65 /// Request number for diagnostic purposes. 65 /// Request number for diagnostic purposes.
66 /// </summary> 66 /// </summary>
67 public static int RequestNumber = 0; 67 public static int RequestNumber { get; internal set; }
68 68
69 /// <summary> 69 /// <summary>
70 /// this is the header field used to communicate the local request id 70 /// this is the header field used to communicate the local request id