diff options
author | Charles Krinke | 2008-09-03 03:32:29 +0000 |
---|---|---|
committer | Charles Krinke | 2008-09-03 03:32:29 +0000 |
commit | 98da84c851503c498e788f9c057ad19efaa33ebc (patch) | |
tree | c8952fdcfbd8f0437806e35ddb3601e40acdba86 | |
parent | Mantis #2099 (diff) | |
download | opensim-SC-98da84c851503c498e788f9c057ad19efaa33ebc.zip opensim-SC-98da84c851503c498e788f9c057ad19efaa33ebc.tar.gz opensim-SC-98da84c851503c498e788f9c057ad19efaa33ebc.tar.bz2 opensim-SC-98da84c851503c498e788f9c057ad19efaa33ebc.tar.xz |
Mantis#2105. Thank you kindly, HomerHorwitz for a patch that addresses:
Due to the many problems with not cleaned up child-agents, I thought it
might make sense to be able to see them on the console. 'show users' on
the region-server's console now outputs root- and child-agents (with
"root" or "child" column)
-rw-r--r-- | OpenSim/Region/Application/OpenSim.cs | 17 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Scenes/SceneManager.cs | 13 |
2 files changed, 22 insertions, 8 deletions
diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index dbadecc..6829bef 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs | |||
@@ -661,13 +661,13 @@ namespace OpenSim | |||
661 | break; | 661 | break; |
662 | 662 | ||
663 | case "users": | 663 | case "users": |
664 | IList agents = m_sceneManager.GetCurrentSceneAvatars(); | 664 | IList agents = m_sceneManager.GetCurrentScenePresences(); |
665 | 665 | ||
666 | m_console.Notice(String.Format("\nAgents connected: {0}\n", agents.Count)); | 666 | m_console.Notice(String.Format("\nAgents connected: {0}\n", agents.Count)); |
667 | 667 | ||
668 | m_console.Notice( | 668 | m_console.Notice( |
669 | String.Format("{0,-16}{1,-16}{2,-37}{3,-16}", "Firstname", "Lastname", | 669 | String.Format("{0,-16}{1,-16}{2,-37}{3,-11}{4,-16}", "Firstname", "Lastname", |
670 | "Agent ID","Region")); | 670 | "Agent ID", "Root/Child", "Region")); |
671 | 671 | ||
672 | foreach (ScenePresence presence in agents) | 672 | foreach (ScenePresence presence in agents) |
673 | { | 673 | { |
@@ -685,11 +685,12 @@ namespace OpenSim | |||
685 | 685 | ||
686 | m_console.Notice( | 686 | m_console.Notice( |
687 | String.Format( | 687 | String.Format( |
688 | "{0,-16}{1,-16}{2,-37}{3,-16}", | 688 | "{0,-16}{1,-16}{2,-37}{3,-11}{4,-16}", |
689 | presence.Firstname, | 689 | presence.Firstname, |
690 | presence.Lastname, | 690 | presence.Lastname, |
691 | presence.UUID, | 691 | presence.UUID, |
692 | regionName)); | 692 | presence.IsChildAgent ? "Child" : "Root", |
693 | regionName)); | ||
693 | } | 694 | } |
694 | 695 | ||
695 | m_console.Notice(""); | 696 | m_console.Notice(""); |
diff --git a/OpenSim/Region/Environment/Scenes/SceneManager.cs b/OpenSim/Region/Environment/Scenes/SceneManager.cs index 046dab3..5546618 100644 --- a/OpenSim/Region/Environment/Scenes/SceneManager.cs +++ b/OpenSim/Region/Environment/Scenes/SceneManager.cs | |||
@@ -435,6 +435,19 @@ namespace OpenSim.Region.Environment.Scenes | |||
435 | return avatars; | 435 | return avatars; |
436 | } | 436 | } |
437 | 437 | ||
438 | public List<ScenePresence> GetCurrentScenePresences() | ||
439 | { | ||
440 | List<ScenePresence> presences = new List<ScenePresence>(); | ||
441 | |||
442 | ForEachCurrentScene(delegate(Scene scene) | ||
443 | { | ||
444 | List<ScenePresence> scenePresences = scene.GetScenePresences(); | ||
445 | presences.AddRange(scenePresences); | ||
446 | }); | ||
447 | |||
448 | return presences; | ||
449 | } | ||
450 | |||
438 | public RegionInfo GetRegionInfo(ulong regionHandle) | 451 | public RegionInfo GetRegionInfo(ulong regionHandle) |
439 | { | 452 | { |
440 | foreach (Scene scene in m_localScenes) | 453 | foreach (Scene scene in m_localScenes) |