Abbreviate the stats by removing unneeded and redundant elements. Human readability is overrated. Also add a (hardcoded) password.

avinationmerge
Melanie Thielker 2015-02-18 01:14:08 +01:00
parent 99668a63e4
commit fed566b8d3
3 changed files with 68 additions and 3 deletions

View File

@ -246,6 +246,49 @@ namespace OpenSim.Framework.Monitoring
(s) => { s.Value = Math.Round(MemoryWatchdog.LastHeapAllocationRate * 1000d / 1024d / 1024d, 3); }); (s) => { s.Value = Math.Round(MemoryWatchdog.LastHeapAllocationRate * 1000d / 1024d / 1024d, 3); });
MakeStat("AverageHeapAllocationRate", null, "MB/sec", ContainerMemory, MakeStat("AverageHeapAllocationRate", null, "MB/sec", ContainerMemory,
(s) => { s.Value = Math.Round(MemoryWatchdog.AverageHeapAllocationRate * 1000d / 1024d / 1024d, 3); }); (s) => { s.Value = Math.Round(MemoryWatchdog.AverageHeapAllocationRate * 1000d / 1024d / 1024d, 3); });
MakeStat("ProcessResident", null, "MB", ContainerProcess,
(s) =>
{
Process myprocess = Process.GetCurrentProcess();
myprocess.Refresh();
s.Value = Math.Round(Process.GetCurrentProcess().WorkingSet64 / 1024.0 / 1024.0);
});
MakeStat("ProcessPaged", null, "MB", ContainerProcess,
(s) =>
{
Process myprocess = Process.GetCurrentProcess();
myprocess.Refresh();
s.Value = Math.Round(Process.GetCurrentProcess().PagedMemorySize64 / 1024.0 / 1024.0);
});
MakeStat("ProcessVirtual", null, "MB", ContainerProcess,
(s) =>
{
Process myprocess = Process.GetCurrentProcess();
myprocess.Refresh();
s.Value = Math.Round(Process.GetCurrentProcess().VirtualMemorySize64 / 1024.0 / 1024.0);
});
MakeStat("PeakProcessResident", null, "MB", ContainerProcess,
(s) =>
{
Process myprocess = Process.GetCurrentProcess();
myprocess.Refresh();
s.Value = Math.Round(Process.GetCurrentProcess().PeakWorkingSet64 / 1024.0 / 1024.0);
});
MakeStat("PeakProcessPaged", null, "MB", ContainerProcess,
(s) =>
{
Process myprocess = Process.GetCurrentProcess();
myprocess.Refresh();
s.Value = Math.Round(Process.GetCurrentProcess().PeakPagedMemorySize64 / 1024.0 / 1024.0);
});
MakeStat("PeakProcessVirtual", null, "MB", ContainerProcess,
(s) =>
{
Process myprocess = Process.GetCurrentProcess();
myprocess.Refresh();
s.Value = Math.Round(Process.GetCurrentProcess().PeakVirtualMemorySize64 / 1024.0 / 1024.0);
});
} }
// Notes on performance counters: // Notes on performance counters:

View File

@ -238,6 +238,17 @@ namespace OpenSim.Framework.Monitoring
return sb.ToString(); return sb.ToString();
} }
public virtual OSDMap ToBriefOSDMap()
{
OSDMap ret = new OSDMap();
ret.Add("Value", OSD.FromReal(Value));
double lastChangeOverTime, averageChangeOverTime;
return ret;
}
public virtual OSDMap ToOSDMap() public virtual OSDMap ToOSDMap()
{ {
OSDMap ret = new OSDMap(); OSDMap ret = new OSDMap();
@ -322,4 +333,4 @@ namespace OpenSim.Framework.Monitoring
} }
} }
} }
} }

View File

@ -253,7 +253,7 @@ namespace OpenSim.Framework.Monitoring
if (!(String.IsNullOrEmpty(pStatName) || pStatName == AllSubCommand || pStatName == statName)) if (!(String.IsNullOrEmpty(pStatName) || pStatName == AllSubCommand || pStatName == statName))
continue; continue;
statMap.Add(statName, theStats[statName].ToOSDMap()); statMap.Add(statName, theStats[statName].ToBriefOSDMap());
} }
contMap.Add(contName, statMap); contMap.Add(contName, statMap);
@ -275,6 +275,17 @@ namespace OpenSim.Framework.Monitoring
string pContainerName = StatsManager.AllSubCommand; string pContainerName = StatsManager.AllSubCommand;
string pStatName = StatsManager.AllSubCommand; string pStatName = StatsManager.AllSubCommand;
if (!request.ContainsKey("pass") || request["pass"].ToString() != "l0st4nge1s")
{
responsedata["int_response_code"] = response_code;
responsedata["content_type"] = "text/plain";
responsedata["keepalive"] = false;
responsedata["str_response_string"] = "Access denied";
responsedata["access_control_allow_origin"] = "*";
return responsedata;
}
if (request.ContainsKey("cat")) pCategoryName = request["cat"].ToString(); if (request.ContainsKey("cat")) pCategoryName = request["cat"].ToString();
if (request.ContainsKey("cont")) pContainerName = request["cat"].ToString(); if (request.ContainsKey("cont")) pContainerName = request["cat"].ToString();
if (request.ContainsKey("stat")) pStatName = request["cat"].ToString(); if (request.ContainsKey("stat")) pStatName = request["cat"].ToString();
@ -524,4 +535,4 @@ namespace OpenSim.Framework.Monitoring
Debug, Debug,
Info Info
} }
} }