* Added "show queues" command that shows throttling queues for all clients.
*** This only works for LLCLientView at the moment ***0.6.1-post-fixes
parent
0f25e8298b
commit
56f1b03cd0
|
@ -373,7 +373,7 @@ namespace OpenSim.Framework.Servers
|
||||||
/// That is something that cannot be determined within this class. So
|
/// That is something that cannot be determined within this class. So
|
||||||
/// all attempts to use the console MUST be verified.
|
/// all attempts to use the console MUST be verified.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void Notice(string msg)
|
protected void Notice(string msg)
|
||||||
{
|
{
|
||||||
if (m_console != null)
|
if (m_console != null)
|
||||||
{
|
{
|
||||||
|
|
|
@ -675,10 +675,11 @@ namespace OpenSim
|
||||||
m_console.Notice("script - manually trigger scripts? or script commands?");
|
m_console.Notice("script - manually trigger scripts? or script commands?");
|
||||||
m_console.Notice("set-time [x] - set the current scene time phase");
|
m_console.Notice("set-time [x] - set the current scene time phase");
|
||||||
m_console.Notice("show assets - show state of asset cache.");
|
m_console.Notice("show assets - show state of asset cache.");
|
||||||
|
m_console.Notice("show modules - shows info about loaded modules.");
|
||||||
|
m_console.Notice("show queues - show packet queues length for all clients.");
|
||||||
|
m_console.Notice("show regions - show running region information.");
|
||||||
m_console.Notice("show users - show info about connected users (only root agents).");
|
m_console.Notice("show users - show info about connected users (only root agents).");
|
||||||
m_console.Notice("show users full - show info about connected users (root and child agents).");
|
m_console.Notice("show users full - show info about connected users (root and child agents).");
|
||||||
m_console.Notice("show modules - shows info about loaded modules.");
|
|
||||||
m_console.Notice("show regions - show running region information.");
|
|
||||||
m_console.Notice("config set section field value - set a config value");
|
m_console.Notice("config set section field value - set a config value");
|
||||||
m_console.Notice("config get section field - get a config value");
|
m_console.Notice("config get section field - get a config value");
|
||||||
m_console.Notice("config save - save OpenSim.ini");
|
m_console.Notice("config save - save OpenSim.ini");
|
||||||
|
@ -769,9 +770,50 @@ namespace OpenSim
|
||||||
scene.RegionInfo.RegionLocY + " , Region Port: " + scene.RegionInfo.InternalEndPoint.Port.ToString());
|
scene.RegionInfo.RegionLocY + " , Region Port: " + scene.RegionInfo.InternalEndPoint.Port.ToString());
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
case "queues":
|
||||||
|
Notice(GetQueuesReport());
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string GetQueuesReport()
|
||||||
|
{
|
||||||
|
string report = String.Empty;
|
||||||
|
|
||||||
|
m_sceneManager.ForEachScene(delegate(Scene scene)
|
||||||
|
{
|
||||||
|
scene.ForEachClient(delegate(IClientAPI client)
|
||||||
|
{
|
||||||
|
if (client is IStatsCollector)
|
||||||
|
{
|
||||||
|
report = report + client.FirstName +
|
||||||
|
" " + client.LastName + "\n";
|
||||||
|
|
||||||
|
IStatsCollector stats =
|
||||||
|
(IStatsCollector) client;
|
||||||
|
|
||||||
|
report = report + string.Format("{0,7} {1,7} {2,7} {3,7} {4,7} {5,7} {6,7} {7,7} {8,7} {9,7}\n",
|
||||||
|
"Send",
|
||||||
|
"In",
|
||||||
|
"Out",
|
||||||
|
"Resend",
|
||||||
|
"Land",
|
||||||
|
"Wind",
|
||||||
|
"Cloud",
|
||||||
|
"Task",
|
||||||
|
"Texture",
|
||||||
|
"Asset");
|
||||||
|
report = report + stats.Report() +
|
||||||
|
"\n\n";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
return report;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Create a new user
|
/// Create a new user
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -52,7 +52,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
/// Handles new client connections
|
/// Handles new client connections
|
||||||
/// Constructor takes a single Packet and authenticates everything
|
/// Constructor takes a single Packet and authenticates everything
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class LLClientView : IClientAPI, IClientCore, IClientIM, IClientChat
|
public class LLClientView : IClientAPI, IClientCore, IClientIM, IClientChat, IStatsCollector
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
|
@ -8093,5 +8093,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public string Report()
|
||||||
|
{
|
||||||
|
LLPacketHandler handler = (LLPacketHandler) m_PacketHandler;
|
||||||
|
return handler.PacketQueue.GetStats();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -610,7 +610,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
// See IPullStatsProvider
|
// See IPullStatsProvider
|
||||||
public string GetStats()
|
public string GetStats()
|
||||||
{
|
{
|
||||||
return string.Format("{0,7} {1,7} {2,7} {3,7} {4,7} {5,7} {6,7} {7,7} {8,7} {9,7}",
|
return string.Format("{0,7} {1,7} {2,7} {3,7} {4,7} {5,7} {6,7} {7,7} {8,7} {9,7}",
|
||||||
SendQueue.Count(),
|
SendQueue.Count(),
|
||||||
IncomingPacketQueue.Count,
|
IncomingPacketQueue.Count,
|
||||||
OutgoingPacketQueue.Count,
|
OutgoingPacketQueue.Count,
|
||||||
|
|
|
@ -4227,7 +4227,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
return m_sceneGraph.TryGetAvatarByName(avatarName, out avatar);
|
return m_sceneGraph.TryGetAvatarByName(avatarName, out avatar);
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void ForEachClient(Action<IClientAPI> action)
|
public void ForEachClient(Action<IClientAPI> action)
|
||||||
{
|
{
|
||||||
m_sceneGraph.ForEachClient(action);
|
m_sceneGraph.ForEachClient(action);
|
||||||
}
|
}
|
||||||
|
|
|
@ -2346,6 +2346,7 @@
|
||||||
<Reference name="OpenSim.Framework"/>
|
<Reference name="OpenSim.Framework"/>
|
||||||
<Reference name="OpenSim.Data"/>
|
<Reference name="OpenSim.Data"/>
|
||||||
<Reference name="OpenSim.Framework.Servers"/>
|
<Reference name="OpenSim.Framework.Servers"/>
|
||||||
|
<Reference name="OpenSim.Framework.Statistics"/>
|
||||||
<Reference name="OpenSim.Framework.Console"/>
|
<Reference name="OpenSim.Framework.Console"/>
|
||||||
<Reference name="OpenSim.Region.Environment"/>
|
<Reference name="OpenSim.Region.Environment"/>
|
||||||
<Reference name="OpenSim.Region.ClientStack"/>
|
<Reference name="OpenSim.Region.ClientStack"/>
|
||||||
|
|
Loading…
Reference in New Issue