diff options
-rw-r--r-- | OpenSim/Framework/Monitoring/ServerStatsCollector.cs | 43 | ||||
-rw-r--r-- | OpenSim/Framework/Monitoring/Stats/Stat.cs | 13 | ||||
-rw-r--r-- | OpenSim/Framework/Monitoring/StatsManager.cs | 15 |
3 files changed, 68 insertions, 3 deletions
diff --git a/OpenSim/Framework/Monitoring/ServerStatsCollector.cs b/OpenSim/Framework/Monitoring/ServerStatsCollector.cs index ac0f0bc..e6c73d3 100644 --- a/OpenSim/Framework/Monitoring/ServerStatsCollector.cs +++ b/OpenSim/Framework/Monitoring/ServerStatsCollector.cs | |||
@@ -246,6 +246,49 @@ namespace OpenSim.Framework.Monitoring | |||
246 | (s) => { s.Value = Math.Round(MemoryWatchdog.LastHeapAllocationRate * 1000d / 1024d / 1024d, 3); }); | 246 | (s) => { s.Value = Math.Round(MemoryWatchdog.LastHeapAllocationRate * 1000d / 1024d / 1024d, 3); }); |
247 | MakeStat("AverageHeapAllocationRate", null, "MB/sec", ContainerMemory, | 247 | MakeStat("AverageHeapAllocationRate", null, "MB/sec", ContainerMemory, |
248 | (s) => { s.Value = Math.Round(MemoryWatchdog.AverageHeapAllocationRate * 1000d / 1024d / 1024d, 3); }); | 248 | (s) => { s.Value = Math.Round(MemoryWatchdog.AverageHeapAllocationRate * 1000d / 1024d / 1024d, 3); }); |
249 | |||
250 | MakeStat("ProcessResident", null, "MB", ContainerProcess, | ||
251 | (s) => | ||
252 | { | ||
253 | Process myprocess = Process.GetCurrentProcess(); | ||
254 | myprocess.Refresh(); | ||
255 | s.Value = Math.Round(Process.GetCurrentProcess().WorkingSet64 / 1024.0 / 1024.0); | ||
256 | }); | ||
257 | MakeStat("ProcessPaged", null, "MB", ContainerProcess, | ||
258 | (s) => | ||
259 | { | ||
260 | Process myprocess = Process.GetCurrentProcess(); | ||
261 | myprocess.Refresh(); | ||
262 | s.Value = Math.Round(Process.GetCurrentProcess().PagedMemorySize64 / 1024.0 / 1024.0); | ||
263 | }); | ||
264 | MakeStat("ProcessVirtual", null, "MB", ContainerProcess, | ||
265 | (s) => | ||
266 | { | ||
267 | Process myprocess = Process.GetCurrentProcess(); | ||
268 | myprocess.Refresh(); | ||
269 | s.Value = Math.Round(Process.GetCurrentProcess().VirtualMemorySize64 / 1024.0 / 1024.0); | ||
270 | }); | ||
271 | MakeStat("PeakProcessResident", null, "MB", ContainerProcess, | ||
272 | (s) => | ||
273 | { | ||
274 | Process myprocess = Process.GetCurrentProcess(); | ||
275 | myprocess.Refresh(); | ||
276 | s.Value = Math.Round(Process.GetCurrentProcess().PeakWorkingSet64 / 1024.0 / 1024.0); | ||
277 | }); | ||
278 | MakeStat("PeakProcessPaged", null, "MB", ContainerProcess, | ||
279 | (s) => | ||
280 | { | ||
281 | Process myprocess = Process.GetCurrentProcess(); | ||
282 | myprocess.Refresh(); | ||
283 | s.Value = Math.Round(Process.GetCurrentProcess().PeakPagedMemorySize64 / 1024.0 / 1024.0); | ||
284 | }); | ||
285 | MakeStat("PeakProcessVirtual", null, "MB", ContainerProcess, | ||
286 | (s) => | ||
287 | { | ||
288 | Process myprocess = Process.GetCurrentProcess(); | ||
289 | myprocess.Refresh(); | ||
290 | s.Value = Math.Round(Process.GetCurrentProcess().PeakVirtualMemorySize64 / 1024.0 / 1024.0); | ||
291 | }); | ||
249 | } | 292 | } |
250 | 293 | ||
251 | // Notes on performance counters: | 294 | // Notes on performance counters: |
diff --git a/OpenSim/Framework/Monitoring/Stats/Stat.cs b/OpenSim/Framework/Monitoring/Stats/Stat.cs index e095801..bd757d0 100644 --- a/OpenSim/Framework/Monitoring/Stats/Stat.cs +++ b/OpenSim/Framework/Monitoring/Stats/Stat.cs | |||
@@ -238,6 +238,17 @@ namespace OpenSim.Framework.Monitoring | |||
238 | return sb.ToString(); | 238 | return sb.ToString(); |
239 | } | 239 | } |
240 | 240 | ||
241 | public virtual OSDMap ToBriefOSDMap() | ||
242 | { | ||
243 | OSDMap ret = new OSDMap(); | ||
244 | |||
245 | ret.Add("Value", OSD.FromReal(Value)); | ||
246 | |||
247 | double lastChangeOverTime, averageChangeOverTime; | ||
248 | |||
249 | return ret; | ||
250 | } | ||
251 | |||
241 | public virtual OSDMap ToOSDMap() | 252 | public virtual OSDMap ToOSDMap() |
242 | { | 253 | { |
243 | OSDMap ret = new OSDMap(); | 254 | OSDMap ret = new OSDMap(); |
@@ -322,4 +333,4 @@ namespace OpenSim.Framework.Monitoring | |||
322 | } | 333 | } |
323 | } | 334 | } |
324 | } | 335 | } |
325 | } \ No newline at end of file | 336 | } |
diff --git a/OpenSim/Framework/Monitoring/StatsManager.cs b/OpenSim/Framework/Monitoring/StatsManager.cs index 05ee4c5..249cef6 100644 --- a/OpenSim/Framework/Monitoring/StatsManager.cs +++ b/OpenSim/Framework/Monitoring/StatsManager.cs | |||
@@ -253,7 +253,7 @@ namespace OpenSim.Framework.Monitoring | |||
253 | if (!(String.IsNullOrEmpty(pStatName) || pStatName == AllSubCommand || pStatName == statName)) | 253 | if (!(String.IsNullOrEmpty(pStatName) || pStatName == AllSubCommand || pStatName == statName)) |
254 | continue; | 254 | continue; |
255 | 255 | ||
256 | statMap.Add(statName, theStats[statName].ToOSDMap()); | 256 | statMap.Add(statName, theStats[statName].ToBriefOSDMap()); |
257 | } | 257 | } |
258 | 258 | ||
259 | contMap.Add(contName, statMap); | 259 | contMap.Add(contName, statMap); |
@@ -275,6 +275,17 @@ namespace OpenSim.Framework.Monitoring | |||
275 | string pContainerName = StatsManager.AllSubCommand; | 275 | string pContainerName = StatsManager.AllSubCommand; |
276 | string pStatName = StatsManager.AllSubCommand; | 276 | string pStatName = StatsManager.AllSubCommand; |
277 | 277 | ||
278 | if (!request.ContainsKey("pass") || request["pass"].ToString() != "l0st4nge1s") | ||
279 | { | ||
280 | responsedata["int_response_code"] = response_code; | ||
281 | responsedata["content_type"] = "text/plain"; | ||
282 | responsedata["keepalive"] = false; | ||
283 | responsedata["str_response_string"] = "Access denied"; | ||
284 | responsedata["access_control_allow_origin"] = "*"; | ||
285 | |||
286 | return responsedata; | ||
287 | } | ||
288 | |||
278 | if (request.ContainsKey("cat")) pCategoryName = request["cat"].ToString(); | 289 | if (request.ContainsKey("cat")) pCategoryName = request["cat"].ToString(); |
279 | if (request.ContainsKey("cont")) pContainerName = request["cat"].ToString(); | 290 | if (request.ContainsKey("cont")) pContainerName = request["cat"].ToString(); |
280 | if (request.ContainsKey("stat")) pStatName = request["cat"].ToString(); | 291 | if (request.ContainsKey("stat")) pStatName = request["cat"].ToString(); |
@@ -524,4 +535,4 @@ namespace OpenSim.Framework.Monitoring | |||
524 | Debug, | 535 | Debug, |
525 | Info | 536 | Info |
526 | } | 537 | } |
527 | } \ No newline at end of file | 538 | } |