2007-04-28 20:54:02 +00:00
using System ;
using System.Text ;
2008-07-21 21:12:59 +00:00
namespace OpenMetaverse.TestClient
2007-04-28 20:54:02 +00:00
{
public class StatsCommand : Command
{
public StatsCommand ( TestClient testClient )
{
Name = "stats" ;
Description = "Provide connection figures and statistics" ;
2008-07-25 08:55:36 +00:00
Category = CommandCategory . Simulator ;
2007-04-28 20:54:02 +00:00
}
2008-07-25 05:15:05 +00:00
public override string Execute ( string [ ] args , UUID fromAgentID )
2007-04-28 20:54:02 +00:00
{
StringBuilder output = new StringBuilder ( ) ;
lock ( Client . Network . Simulators )
{
2021-07-25 11:10:52 -05:00
foreach ( var sim in Client . Network . Simulators )
2007-04-28 20:54:02 +00:00
{
2022-02-25 19:38:11 -06:00
output . AppendLine (
$"[{sim}] Dilation: {sim.Stats.Dilation} InBPS: {sim.Stats.IncomingBPS} OutBPS: {sim.Stats.OutgoingBPS} ResentOut: {sim.Stats.ResentPackets} ResentIn: {sim.Stats.ReceivedResends}" ) ;
2007-04-28 20:54:02 +00:00
}
}
2007-08-20 09:26:21 +00:00
Simulator csim = Client . Network . CurrentSim ;
2007-04-28 20:54:02 +00:00
output . Append ( "Packets in the queue: " + Client . Network . InboxCount ) ;
2022-02-25 19:38:11 -06:00
output . AppendLine (
$"FPS : {csim.Stats.FPS} PhysicsFPS : {csim.Stats.PhysicsFPS} AgentUpdates : {csim.Stats.AgentUpdates} Objects : {csim.Stats.Objects} Scripted Objects : {csim.Stats.ScriptedObjects}" ) ;
output . AppendLine (
$"Frame Time : {csim.Stats.FrameTime} Net Time : {csim.Stats.NetTime} Image Time : {csim.Stats.ImageTime} Physics Time : {csim.Stats.PhysicsTime} Script Time : {csim.Stats.ScriptTime} Other Time : {csim.Stats.OtherTime}" ) ;
output . AppendLine (
$"Agents : {csim.Stats.Agents} Child Agents : {csim.Stats.ChildAgents} Active Scripts : {csim.Stats.ActiveScripts}" ) ;
2007-04-28 20:54:02 +00:00
return output . ToString ( ) ;
}
}
}