diff options
author | Justin Clark-Casey (justincc) | 2013-07-19 00:16:09 +0100 |
---|---|---|
committer | Diva Canto | 2013-07-21 08:58:39 -0700 |
commit | e5c677779b8501c245e5399240ffe3ca2519ec72 (patch) | |
tree | a80a7cffda5fedc076364f4faedd27196c1d00a1 | |
parent | Hack in console command "debug lludp toggle agentupdate" to allow AgentUpdate... (diff) | |
download | opensim-SC-e5c677779b8501c245e5399240ffe3ca2519ec72.zip opensim-SC-e5c677779b8501c245e5399240ffe3ca2519ec72.tar.gz opensim-SC-e5c677779b8501c245e5399240ffe3ca2519ec72.tar.bz2 opensim-SC-e5c677779b8501c245e5399240ffe3ca2519ec72.tar.xz |
Add measure of number of inbound AgentUpdates that were seen as significant to "show client stats" (i.e. sent on for further processing instead of being discarded)
Added here since it was the most convenient place
Number is in the last column, "Sig. AgentUpdates" along with percentage of all AgentUpdates
Percentage largely falls over time, most cpu for processing AgentUpdates may be in UDP processing as turning this off even earlier (with "debug lludp toggle agentupdate" results in a big cpu fall
Also tidies up display.
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 3 | ||||
-rw-r--r-- | OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs | 12 |
2 files changed, 12 insertions, 3 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 711a574..3145275 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -5565,6 +5565,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
5565 | 5565 | ||
5566 | #region Packet Handlers | 5566 | #region Packet Handlers |
5567 | 5567 | ||
5568 | public int TotalSignificantAgentUpdates { get; private set; } | ||
5569 | |||
5568 | #region Scene/Avatar | 5570 | #region Scene/Avatar |
5569 | 5571 | ||
5570 | private bool HandleAgentUpdate(IClientAPI sener, Packet packet) | 5572 | private bool HandleAgentUpdate(IClientAPI sener, Packet packet) |
@@ -5614,6 +5616,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
5614 | if (update) | 5616 | if (update) |
5615 | { | 5617 | { |
5616 | // m_log.DebugFormat("[LLCLIENTVIEW]: Triggered AgentUpdate for {0}", sener.Name); | 5618 | // m_log.DebugFormat("[LLCLIENTVIEW]: Triggered AgentUpdate for {0}", sener.Name); |
5619 | TotalSignificantAgentUpdates++; | ||
5617 | 5620 | ||
5618 | m_lastAgentUpdateArgs.AgentID = x.AgentID; | 5621 | m_lastAgentUpdateArgs.AgentID = x.AgentID; |
5619 | m_lastAgentUpdateArgs.BodyRotation = x.BodyRotation; | 5622 | m_lastAgentUpdateArgs.BodyRotation = x.BodyRotation; |
diff --git a/OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs b/OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs index 79509ab..c208b38 100644 --- a/OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs +++ b/OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs | |||
@@ -611,7 +611,7 @@ namespace OpenSim.Region.OptionalModules.UDP.Linden | |||
611 | // | 611 | // |
612 | if (showParams.Length <= 4) | 612 | if (showParams.Length <= 4) |
613 | { | 613 | { |
614 | m_log.InfoFormat("[INFO]: {0,-12} {1,20} {2,6} {3,11} {4, 10}", "Region", "Name", "Root", "Time", "Reqs/min"); | 614 | m_log.InfoFormat("[INFO]: {0,-12} {1,-20} {2,-6} {3,-11} {4,-11} {5,-16}", "Region", "Name", "Root", "Time", "Reqs/min", "Sig. AgentUpdates"); |
615 | foreach (Scene scene in m_scenes.Values) | 615 | foreach (Scene scene in m_scenes.Values) |
616 | { | 616 | { |
617 | scene.ForEachClient( | 617 | scene.ForEachClient( |
@@ -624,9 +624,15 @@ namespace OpenSim.Region.OptionalModules.UDP.Linden | |||
624 | int avg_reqs = cinfo.AsyncRequests.Values.Sum() + cinfo.GenericRequests.Values.Sum() + cinfo.SyncRequests.Values.Sum(); | 624 | int avg_reqs = cinfo.AsyncRequests.Values.Sum() + cinfo.GenericRequests.Values.Sum() + cinfo.SyncRequests.Values.Sum(); |
625 | avg_reqs = avg_reqs / ((DateTime.Now - cinfo.StartedTime).Minutes + 1); | 625 | avg_reqs = avg_reqs / ((DateTime.Now - cinfo.StartedTime).Minutes + 1); |
626 | 626 | ||
627 | m_log.InfoFormat("[INFO]: {0,-12} {1,20} {2,4} {3,9}min {4,10}", | 627 | m_log.InfoFormat("[INFO]: {0,-12} {1,-20} {2,-6} {3,-11} {4,-11}/min {5,-16}", |
628 | scene.RegionInfo.RegionName, llClient.Name, | 628 | scene.RegionInfo.RegionName, llClient.Name, |
629 | (llClient.SceneAgent.IsChildAgent ? "N" : "Y"), (DateTime.Now - cinfo.StartedTime).Minutes, avg_reqs); | 629 | llClient.SceneAgent.IsChildAgent ? "N" : "Y", |
630 | (DateTime.Now - cinfo.StartedTime).Minutes, | ||
631 | avg_reqs, | ||
632 | string.Format( | ||
633 | "{0}, {1}%", | ||
634 | llClient.TotalSignificantAgentUpdates, | ||
635 | (float)llClient.TotalSignificantAgentUpdates / cinfo.SyncRequests["AgentUpdate"] * 100)); | ||
630 | } | 636 | } |
631 | }); | 637 | }); |
632 | } | 638 | } |