From b6b0bc7b32ec5009eb482d51d0e9ff711e6ec022 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Tue, 29 Nov 2011 16:15:52 +0000 Subject: Add "debug http" command for currently simple extra debug logging of non-event queue inbound http requests to a simulator --- OpenSim/Region/Application/OpenSim.cs | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index ee26e4f..f4ed32e 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs @@ -242,6 +242,14 @@ namespace OpenSim + "If an avatar name is given then only packets from that avatar are logged", Debug); + m_console.Commands.AddCommand("region", false, "debug http", + "debug http ", + "Turn on inbound http request debugging for everything except the event queue (see debug eq)." + + "If level >= 2 then the handler used to service the request is logged.\n" + + "If level >= 1 then incoming HTTP requests are logged.\n" + + "If level <= 0 then no extra http logging is done.\n", + Debug); + m_console.Commands.AddCommand("region", false, "debug scene", "debug scene ", "Turn on scene debugging", Debug); @@ -889,10 +897,24 @@ namespace OpenSim } else { - MainConsole.Instance.Output("packet debug should be 0..255"); + MainConsole.Instance.Output("Usage: debug packet 0..255"); + } + } + + break; + + case "http": + if (args.Length == 3) + { + int newDebug; + if (int.TryParse(args[2], out newDebug)) + { + MainServer.Instance.DebugLevel = newDebug; + break; } } + MainConsole.Instance.Output("Usage: debug http 0..2"); break; case "scene": @@ -917,7 +939,7 @@ namespace OpenSim } else { - MainConsole.Instance.Output("debug scene (where inside <> is true/false)"); + MainConsole.Instance.Output("Usage: debug scene (where inside <> is true/false)"); } break; -- cgit v1.1 From ff0d020007d1747dbaaca077fd3a930f2ecd1767 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Tue, 29 Nov 2011 16:18:14 +0000 Subject: Correct mistake in "debug eq" help --- .../Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs index 5c721d4..0b76647 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs @@ -111,7 +111,7 @@ namespace OpenSim.Region.ClientStack.Linden "debug eq", "debug eq [0|1]", "debug eq 1 will turn on event queue debugging. This will log all outgoing event queue messages to clients.\n" - + "debug eq 1 will turn off event queue debugging.", + + "debug eq 0 will turn off event queue debugging.", HandleDebugEq); } else -- cgit v1.1 From d3a46b03bf8761f5917b324392aa60b10cd9e078 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Tue, 29 Nov 2011 16:29:11 +0000 Subject: tabulate "show caps" output for easier readability --- .../CoreModules/Framework/Caps/CapabilitiesModule.cs | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs b/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs index afbd902..780411f 100644 --- a/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs +++ b/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs @@ -29,6 +29,7 @@ using System; using System.Collections; using System.Collections.Generic; using System.Reflection; +using System.Text; using log4net; using Nini.Config; using Mono.Addins; @@ -46,6 +47,8 @@ namespace OpenSim.Region.CoreModules.Framework public class CapabilitiesModule : INonSharedRegionModule, ICapabilitiesModule { private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); + + private string m_showCapsCommandFormat = " {0,-38} {1,-60}\n"; protected Scene m_scene; @@ -68,7 +71,7 @@ namespace OpenSim.Region.CoreModules.Framework m_scene.RegisterModuleInterface(this); MainConsole.Instance.Commands.AddCommand("Capabilities", false, "show caps", "show caps", - "Shows all registered capabilities", CapabilitiesCommand); + "Shows all registered capabilities", HandleShowCapsCommand); } public void RegionLoaded(Scene scene) @@ -227,21 +230,23 @@ namespace OpenSim.Region.CoreModules.Framework } } - private void CapabilitiesCommand(string module, string[] cmdparams) + private void HandleShowCapsCommand(string module, string[] cmdparams) { - System.Text.StringBuilder caps = new System.Text.StringBuilder(); + StringBuilder caps = new StringBuilder(); caps.AppendFormat("Region {0}:\n", m_scene.RegionInfo.RegionName); foreach (KeyValuePair kvp in m_capsObjects) { caps.AppendFormat("** User {0}:\n", kvp.Key); + for (IDictionaryEnumerator kvp2 = kvp.Value.CapsHandlers.CapsDetails.GetEnumerator(); kvp2.MoveNext(); ) { Uri uri = new Uri(kvp2.Value.ToString()); - caps.AppendFormat(" {0} = {1}\n", kvp2.Key, uri.PathAndQuery); + caps.AppendFormat(m_showCapsCommandFormat, kvp2.Key, uri.PathAndQuery); } + foreach (KeyValuePair kvp3 in kvp.Value.ExternalCapsHandlers) - caps.AppendFormat(" {0} = {1}\n", kvp3.Key, kvp3.Value); + caps.AppendFormat(m_showCapsCommandFormat, kvp3.Key, kvp3.Value); } MainConsole.Instance.Output(caps.ToString()); -- cgit v1.1 From a17f93ff44baf41d7ceb3a11a61997fef2c5768b Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Tue, 29 Nov 2011 16:31:10 +0000 Subject: minor: remove mono compile warning, a Vector3 can never be null since it's a struct --- OpenSim/Region/Physics/Meshing/Meshmerizer.cs | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs index 53d5e4c..f15e81b 100644 --- a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs +++ b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs @@ -171,16 +171,13 @@ namespace OpenSim.Region.Physics.Meshing foreach (Vector3 v in meshIn.getVertexList()) { - if (v != null) - { - if (v.X < minX) minX = v.X; - if (v.Y < minY) minY = v.Y; - if (v.Z < minZ) minZ = v.Z; + if (v.X < minX) minX = v.X; + if (v.Y < minY) minY = v.Y; + if (v.Z < minZ) minZ = v.Z; - if (v.X > maxX) maxX = v.X; - if (v.Y > maxY) maxY = v.Y; - if (v.Z > maxZ) maxZ = v.Z; - } + if (v.X > maxX) maxX = v.X; + if (v.Y > maxY) maxY = v.Y; + if (v.Z > maxZ) maxZ = v.Z; } return CreateSimpleBoxMesh(minX, maxX, minY, maxY, minZ, maxZ); -- cgit v1.1 From 658d02b5e913bfa21b496515943f90ab25b6dac5 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Tue, 29 Nov 2011 16:56:31 +0000 Subject: Improve some of the debug help messages --- OpenSim/Region/Application/OpenSim.cs | 6 +++--- .../ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs | 1 + OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs | 5 ++--- 3 files changed, 6 insertions(+), 6 deletions(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index f4ed32e..d97583c 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs @@ -244,8 +244,8 @@ namespace OpenSim m_console.Commands.AddCommand("region", false, "debug http", "debug http ", - "Turn on inbound http request debugging for everything except the event queue (see debug eq)." - + "If level >= 2 then the handler used to service the request is logged.\n" + "Turn on inbound http request debugging for everything except the event queue (see debug eq).", + "If level >= 2 then the handler used to service the request is logged.\n" + "If level >= 1 then incoming HTTP requests are logged.\n" + "If level <= 0 then no extra http logging is done.\n", Debug); @@ -345,7 +345,7 @@ namespace OpenSim m_console.Commands.AddCommand("region", false, "backup", "backup", - "Persist objects to the database now", RunCommand); + "Persist currently unsaved object changes immediately instead of waiting for the normal persistence call.", RunCommand); m_console.Commands.AddCommand("region", false, "create region", "create region [\"region name\"] ", diff --git a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs index 0b76647..9f27abc 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs @@ -110,6 +110,7 @@ namespace OpenSim.Region.ClientStack.Linden false, "debug eq", "debug eq [0|1]", + "Turn on event queue debugging", "debug eq 1 will turn on event queue debugging. This will log all outgoing event queue messages to clients.\n" + "debug eq 0 will turn off event queue debugging.", HandleDebugEq); diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs index f416f06..7760382 100644 --- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs +++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs @@ -218,9 +218,8 @@ namespace OpenSim.Region.CoreModules.World.Permissions m_scene.AddCommand(this, "debug permissions", "debug permissions ", - "Enable permissions debugging", - HandleDebugPermissions); - + "Turn on permissions debugging", + HandleDebugPermissions); string grant = myConfig.GetString("GrantLSL",""); if (grant.Length > 0) { -- cgit v1.1 From fa63054c4f5cf970922c2fef386b084272c5491c Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Tue, 29 Nov 2011 20:37:03 +0000 Subject: On "show caps", stop excluding the seed cap but do exclude it elsewhere --- OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs | 3 ++- OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs index 8f0ae76..07b4df3 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs @@ -238,7 +238,8 @@ namespace OpenSim.Region.ClientStack.Linden return string.Empty; } - Hashtable caps = m_HostCapsObj.CapsHandlers.CapsDetails; + Hashtable caps = m_HostCapsObj.CapsHandlers.GetCapsDetails(true); + // Add the external too foreach (KeyValuePair kvp in m_HostCapsObj.ExternalCapsHandlers) caps[kvp.Key] = kvp.Value; diff --git a/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs b/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs index 780411f..9d1538f 100644 --- a/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs +++ b/OpenSim/Region/CoreModules/Framework/Caps/CapabilitiesModule.cs @@ -239,7 +239,7 @@ namespace OpenSim.Region.CoreModules.Framework { caps.AppendFormat("** User {0}:\n", kvp.Key); - for (IDictionaryEnumerator kvp2 = kvp.Value.CapsHandlers.CapsDetails.GetEnumerator(); kvp2.MoveNext(); ) + for (IDictionaryEnumerator kvp2 = kvp.Value.CapsHandlers.GetCapsDetails(false).GetEnumerator(); kvp2.MoveNext(); ) { Uri uri = new Uri(kvp2.Value.ToString()); caps.AppendFormat(m_showCapsCommandFormat, kvp2.Key, uri.PathAndQuery); -- cgit v1.1 From 2a9c9ae340e6ccf76412a03bd44af470558e2d93 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Tue, 29 Nov 2011 21:53:15 +0000 Subject: Provide more user feedback when "debug http" is set --- OpenSim/Region/Application/OpenSim.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index d97583c..4b38a2e 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs @@ -894,6 +894,8 @@ namespace OpenSim if (int.TryParse(args[2], out newDebug)) { m_sceneManager.SetDebugPacketLevelOnCurrentScene(newDebug, name); + // We provide user information elsewhere if any clients had their debug level set. +// MainConsole.Instance.OutputFormat("Debug packet level set to {0}", newDebug); } else { @@ -910,6 +912,7 @@ namespace OpenSim if (int.TryParse(args[2], out newDebug)) { MainServer.Instance.DebugLevel = newDebug; + MainConsole.Instance.OutputFormat("Debug http level set to {0}", newDebug); break; } } @@ -945,7 +948,7 @@ namespace OpenSim break; default: - MainConsole.Instance.Output("Unknown debug"); + MainConsole.Instance.Output("Unknown debug command"); break; } } -- cgit v1.1