diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs | 154 |
1 files changed, 148 insertions, 6 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs index 057ed6f..a9dc1fe 100644 --- a/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs +++ b/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs | |||
@@ -82,7 +82,7 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring | |||
82 | { | 82 | { |
83 | foreach (IMonitor monitor in m_monitors) | 83 | foreach (IMonitor monitor in m_monitors) |
84 | { | 84 | { |
85 | m_log.Info("[MonitorModule]: " + m_scene.RegionInfo.RegionName + " reports " + monitor.GetName() + " = " + monitor.GetFriendlyValue()); | 85 | m_log.Info("[MonitorModule]: " + m_scene.RegionInfo.RegionName + " reports " + monitor.GetFriendlyName() + " = " + monitor.GetFriendlyValue()); |
86 | } | 86 | } |
87 | } | 87 | } |
88 | 88 | ||
@@ -132,11 +132,9 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring | |||
132 | string xml = "<data>"; | 132 | string xml = "<data>"; |
133 | foreach (IMonitor monitor in m_monitors) | 133 | foreach (IMonitor monitor in m_monitors) |
134 | { | 134 | { |
135 | string elemName = monitor.ToString(); | 135 | string elemName = monitor.GetName(); |
136 | if (elemName.StartsWith(monitor.GetType().Namespace)) | 136 | xml += "<" + elemName + ">" + monitor.GetValue().ToString() + "</" + elemName + ">"; |
137 | elemName = elemName.Substring(monitor.GetType().Namespace.Length + 1); | 137 | // m_log.DebugFormat("[MONITOR MODULE]: {0} = {1}", elemName, monitor.GetValue()); |
138 | |||
139 | xml += "<" + elemName + ">" + monitor.GetValue() + "</" + elemName + ">"; | ||
140 | } | 138 | } |
141 | xml += "</data>"; | 139 | xml += "</data>"; |
142 | 140 | ||
@@ -166,6 +164,150 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring | |||
166 | m_monitors.Add(new EventFrameMonitor(m_scene)); | 164 | m_monitors.Add(new EventFrameMonitor(m_scene)); |
167 | m_monitors.Add(new LandFrameMonitor(m_scene)); | 165 | m_monitors.Add(new LandFrameMonitor(m_scene)); |
168 | m_monitors.Add(new LastFrameTimeMonitor(m_scene)); | 166 | m_monitors.Add(new LastFrameTimeMonitor(m_scene)); |
167 | |||
168 | m_monitors.Add( | ||
169 | new GenericMonitor( | ||
170 | m_scene, | ||
171 | "TimeDilationMonitor", | ||
172 | "Time Dilation", | ||
173 | m => m.Scene.StatsReporter.LastReportedSimStats[0], | ||
174 | m => m.GetValue().ToString())); | ||
175 | |||
176 | m_monitors.Add( | ||
177 | new GenericMonitor( | ||
178 | m_scene, | ||
179 | "SimFPSMonitor", | ||
180 | "Sim FPS", | ||
181 | m => m.Scene.StatsReporter.LastReportedSimStats[1], | ||
182 | m => string.Format("{0}", m.GetValue()))); | ||
183 | |||
184 | m_monitors.Add( | ||
185 | new GenericMonitor( | ||
186 | m_scene, | ||
187 | "PhysicsFPSMonitor", | ||
188 | "Physics FPS", | ||
189 | m => m.Scene.StatsReporter.LastReportedSimStats[2], | ||
190 | m => string.Format("{0}", m.GetValue()))); | ||
191 | |||
192 | m_monitors.Add( | ||
193 | new GenericMonitor( | ||
194 | m_scene, | ||
195 | "AgentUpdatesPerSecondMonitor", | ||
196 | "Agent Updates", | ||
197 | m => m.Scene.StatsReporter.LastReportedSimStats[3], | ||
198 | m => string.Format("{0} per second", m.GetValue()))); | ||
199 | |||
200 | m_monitors.Add( | ||
201 | new GenericMonitor( | ||
202 | m_scene, | ||
203 | "ActiveObjectCountMonitor", | ||
204 | "Active Objects", | ||
205 | m => m.Scene.StatsReporter.LastReportedSimStats[7], | ||
206 | m => string.Format("{0}", m.GetValue()))); | ||
207 | |||
208 | m_monitors.Add( | ||
209 | new GenericMonitor( | ||
210 | m_scene, | ||
211 | "ActiveScriptsMonitor", | ||
212 | "Active Scripts", | ||
213 | m => m.Scene.StatsReporter.LastReportedSimStats[19], | ||
214 | m => string.Format("{0}", m.GetValue()))); | ||
215 | |||
216 | m_monitors.Add( | ||
217 | new GenericMonitor( | ||
218 | m_scene, | ||
219 | "ScriptEventsPerSecondMonitor", | ||
220 | "Script Events", | ||
221 | m => m.Scene.StatsReporter.LastReportedSimStats[20], | ||
222 | m => string.Format("{0} per second", m.GetValue()))); | ||
223 | |||
224 | m_monitors.Add( | ||
225 | new GenericMonitor( | ||
226 | m_scene, | ||
227 | "InPacketsPerSecondMonitor", | ||
228 | "In Packets", | ||
229 | m => m.Scene.StatsReporter.LastReportedSimStats[13], | ||
230 | m => string.Format("{0} per second", m.GetValue()))); | ||
231 | |||
232 | m_monitors.Add( | ||
233 | new GenericMonitor( | ||
234 | m_scene, | ||
235 | "OutPacketsPerSecondMonitor", | ||
236 | "Out Packets", | ||
237 | m => m.Scene.StatsReporter.LastReportedSimStats[14], | ||
238 | m => string.Format("{0} per second", m.GetValue()))); | ||
239 | |||
240 | m_monitors.Add( | ||
241 | new GenericMonitor( | ||
242 | m_scene, | ||
243 | "UnackedBytesMonitor", | ||
244 | "Unacked Bytes", | ||
245 | m => m.Scene.StatsReporter.LastReportedSimStats[15], | ||
246 | m => string.Format("{0}", m.GetValue()))); | ||
247 | |||
248 | m_monitors.Add( | ||
249 | new GenericMonitor( | ||
250 | m_scene, | ||
251 | "PendingDownloadsMonitor", | ||
252 | "Pending Downloads", | ||
253 | m => m.Scene.StatsReporter.LastReportedSimStats[17], | ||
254 | m => string.Format("{0}", m.GetValue()))); | ||
255 | |||
256 | m_monitors.Add( | ||
257 | new GenericMonitor( | ||
258 | m_scene, | ||
259 | "PendingUploadsMonitor", | ||
260 | "Pending Uploads", | ||
261 | m => m.Scene.StatsReporter.LastReportedSimStats[18], | ||
262 | m => string.Format("{0}", m.GetValue()))); | ||
263 | |||
264 | m_monitors.Add( | ||
265 | new GenericMonitor( | ||
266 | m_scene, | ||
267 | "TotalFrameTimeMonitor", | ||
268 | "Total Frame Time", | ||
269 | m => m.Scene.StatsReporter.LastReportedSimStats[8], | ||
270 | m => string.Format("{0} ms", m.GetValue()))); | ||
271 | |||
272 | m_monitors.Add( | ||
273 | new GenericMonitor( | ||
274 | m_scene, | ||
275 | "NetFrameTimeMonitor", | ||
276 | "Net Frame Time", | ||
277 | m => m.Scene.StatsReporter.LastReportedSimStats[9], | ||
278 | m => string.Format("{0} ms", m.GetValue()))); | ||
279 | |||
280 | m_monitors.Add( | ||
281 | new GenericMonitor( | ||
282 | m_scene, | ||
283 | "PhysicsFrameTimeMonitor", | ||
284 | "Physics Frame Time", | ||
285 | m => m.Scene.StatsReporter.LastReportedSimStats[10], | ||
286 | m => string.Format("{0} ms", m.GetValue()))); | ||
287 | |||
288 | m_monitors.Add( | ||
289 | new GenericMonitor( | ||
290 | m_scene, | ||
291 | "SimulationFrameTimeMonitor", | ||
292 | "Simulation Frame Time", | ||
293 | m => m.Scene.StatsReporter.LastReportedSimStats[12], | ||
294 | m => string.Format("{0} ms", m.GetValue()))); | ||
295 | |||
296 | m_monitors.Add( | ||
297 | new GenericMonitor( | ||
298 | m_scene, | ||
299 | "AgentFrameTimeMonitor", | ||
300 | "Agent Frame Time", | ||
301 | m => m.Scene.StatsReporter.LastReportedSimStats[16], | ||
302 | m => string.Format("{0} ms", m.GetValue()))); | ||
303 | |||
304 | m_monitors.Add( | ||
305 | new GenericMonitor( | ||
306 | m_scene, | ||
307 | "ImagesFrameTimeMonitor", | ||
308 | "Images Frame Time", | ||
309 | m => m.Scene.StatsReporter.LastReportedSimStats[11], | ||
310 | m => string.Format("{0} ms", m.GetValue()))); | ||
169 | 311 | ||
170 | m_alerts.Add(new DeadlockAlert(m_monitors.Find(x => x is LastFrameTimeMonitor) as LastFrameTimeMonitor)); | 312 | m_alerts.Add(new DeadlockAlert(m_monitors.Find(x => x is LastFrameTimeMonitor) as LastFrameTimeMonitor)); |
171 | 313 | ||