Monitoring

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(debug stats record)
(Add show stats mechanism and make monitoring module deprecated)
 
(4 intermediate revisions by 2 users not shown)
Line 6: Line 6:
  
 
This is an area under active evolution and there is currently a high degree of inconsistency between monitoring and statistics solutions.  This should improve over time.
 
This is an area under active evolution and there is currently a high degree of inconsistency between monitoring and statistics solutions.  This should improve over time.
 +
 +
See [[Client side monitoring]] for information on stats which can be seen via the viewer.
  
 
= Internal monitoring =
 
= Internal monitoring =
  
 
== Web Statistics Module ==
 
== Web Statistics Module ==
A typical second life viewer will periodically send various performance metrics to the simulator (cpu usage, memory used by scene objects in the client, etc.).  This can be recorded by OpenSimulator in an SQLite database for further analysis.  This module also provides separate functionality to see some simulator information in web page format, though this functionality should in the future be moved into a separate module.  See [[Web Statistics module]] for more information.
+
A typical second life viewer will periodically send various performance metrics to the simulator (cpu usage, memory used by scene objects in the client, etc.).  This can be recorded by OpenSimulator in an SQLite database for further analysis.  This module also provides separate functionality to see some simulator information in web page format, though this functionality should in the future be moved into a separate module.  See [[Web Statistics Module]] for more information.
  
 
== show stats ==
 
== show stats ==
A new statistics gathering mechanism is slowly being added to OpenSimulator to integrate previously separate and ad-hoc mechanisms.  For this system, you can see a short statistics summary with the command "show stats" and a much longer list of statistics with the "show stats all" command (which unfortunately doesn't yet include those in the summary!).
+
This is a new statistics gathering mechanism slowly being added to OpenSimulator to integrate previous separate and ad-hoc mechanisms.  It also has an experimental facility for recording this statistics to file for later analysis.  See [[show stats]] for more information.
 
+
Use the "help show stats" command on the console for more information.
+
 
+
== debug stats record ==
+
This is an experimental facilty starting in OpenSimulator 0.7.6 which will record the results of "show stats all" to a log file every 5 seconds.  The aim is to record statistical information throughout a session for later analysis.  The logging is enabled with the console command.  It works on both the simulator and a ROBUST instance.
+
 
+
# debug stats record start
+
Now recording all stats to file every 5000ms
+
 
+
To stop logging, either shutdown the server or use the command
+
 
+
# debug stats record stop
+
Stopped recording stats to file.
+
 
+
The log file used has the same name as the main logfile for the executable with the word "Stats" appended.  For instance, turning on stats logging for OpenSim.exe will write to the file OpenSimStats.log.  For Robust.exe, this will write to RobustStats.log.
+
 
+
Currently and in OpenSimulator 0.7.6, this logging requires entries in OpenSim.exe.config (and Robust.exe.config for Robust).  If you are using your own version of these files then you will need to adapt them for the logging entries.
+
 
+
The performance impact of such logging should be low, though the log file size can grow quite large.
+
  
 
== show queues ==
 
== show queues ==
Line 41: Line 24:
  
 
= External monitoring =
 
= External monitoring =
These are mechanisms which allow you to extract data about a simulator using external calls.
 
  
== SimStatus ==
+
== Supported mechanisms ==
 +
These are mechanisms which allow you to extract data about a simulator using external calls.  These are reocmmended for use.
 +
 
 +
=== SimStatus ===
  
 
If a simulator is running, a GET request to  
 
If a simulator is running, a GET request to  
Line 55: Line 40:
 
in UTF8 if the simulator is running and the port is reachable by the network.
 
in UTF8 if the simulator is running and the port is reachable by the network.
  
== Monitoring Module ==
+
=== XSimStatus ===
  
The monitoring module allows one to retrieve region statistics via a URL. Unlike [[XSimStatus]] and [[UXSimStatus]] one can retrieve statistics per scene rather than just statistics for the scene which sents its stats data last.
+
This old facility provides a way to retrieve some very basic region data and some more detailed information about the simulator as a whole. The data is returns is of low quality. It is always active. Data is provided in JSON format.
  
In OpenSimulator 0.7.2 this is always active. Data is provided in XML format. This is the recommended monitoring module.
+
See [[XSimStatus]].
  
See [[Monitoring Module]]
+
=== UXSimStatus ===
  
== Web Statistics Module ==
+
This returns identical data to the main simulator part of XSimStatus but allows you to explicitly set the URL for retrieving monitoring data rather than having to retrieve a handler with a random UUID. Data is provided in JSON format.
 +
 
 +
See [[UXSimStatus]]
 +
 
 +
=== Show Stats ===
 +
The show stats facility has a mechanism for fetching data via external calls.  Please see the [[show stats]] page for more details.
 +
 
 +
=== Web Statistics Module ===
  
 
The Web Statistics Module is a module in OpenSimulator that can provide human readable HTML pages of monitor stated updated dynamically via AJAX. It also stores some historical data (as mentioned above) which is not extractable via external calls. See [[Web Statistics Module]] for more details.
 
The Web Statistics Module is a module in OpenSimulator that can provide human readable HTML pages of monitor stated updated dynamically via AJAX. It also stores some historical data (as mentioned above) which is not extractable via external calls. See [[Web Statistics Module]] for more details.
  
== XSimStatus ==
+
== Deprecated mechanisms ==
  
This old facility provides a way to retrieve some very basic region data and some more detailed information about the simulator as a whole. The data is returns is of low quality. It is always active. Data is provided in JSON format.
+
These are mechanisms that are deprecated and will be removed in a future OpenSimulator release.
  
See [[XSimStatus]].
+
=== Monitoring Module ===
  
== UXSimStatus ==
+
The monitoring module allows one to retrieve region statistics via a URL. Unlike [[XSimStatus]] and [[UXSimStatus]] one can retrieve statistics per scene rather than just statistics for the scene which sents its stats data last.
  
This returns identical data to the main simulator part of XSimStatus but allows you to explicitly set the URL for retrieving monitoring data rather than having to retrieve a handler with a random UUID. Data is provided in JSON format.
+
All the data available via this module is now available via the [[Show stats]] mechanism. The current exception is the ODE specific debug data.
  
See [[UXSimStatus]]
+
See [[Monitoring Module]]
  
 
= Other stats facilities =
 
= Other stats facilities =

Latest revision as of 12:07, 4 February 2015

Contents

[edit] Introduction

There are a number of ways of monitoring OpenSimulator. All of these relate to monitoring the simulator itself - there is currently no good way to extract statistics from ROBUST hosted services.

This is an area under active evolution and there is currently a high degree of inconsistency between monitoring and statistics solutions. This should improve over time.

See Client side monitoring for information on stats which can be seen via the viewer.

[edit] Internal monitoring

[edit] Web Statistics Module

A typical second life viewer will periodically send various performance metrics to the simulator (cpu usage, memory used by scene objects in the client, etc.). This can be recorded by OpenSimulator in an SQLite database for further analysis. This module also provides separate functionality to see some simulator information in web page format, though this functionality should in the future be moved into a separate module. See Web Statistics Module for more information.

[edit] show stats

This is a new statistics gathering mechanism slowly being added to OpenSimulator to integrate previous separate and ad-hoc mechanisms. It also has an experimental facility for recording this statistics to file for later analysis. See show stats for more information.

[edit] show queues

This console command displays data on the UDP packets transferred between the simulator and the viewer. A high number of resends as a proportion of total sends (say over 15%) for a single user can indicate a bad network connection between a particular viewer and the simulator. A high number of resends for all viewers could indicate a generally bad connection to the simulator.

[edit] xengine status

This console command displays some information on the XEngine script engine, including the number of events queued for processing, the number of active sensors, etimers, etc. If the number of events queued is persistently high then this could indicate an overloaded simulator.

[edit] External monitoring

[edit] Supported mechanisms

These are mechanisms which allow you to extract data about a simulator using external calls. These are reocmmended for use.

[edit] SimStatus

If a simulator is running, a GET request to

http://<sim-ip>:<sim-http-port>/simstatus/

will return

OK

in UTF8 if the simulator is running and the port is reachable by the network.

[edit] XSimStatus

This old facility provides a way to retrieve some very basic region data and some more detailed information about the simulator as a whole. The data is returns is of low quality. It is always active. Data is provided in JSON format.

See XSimStatus.

[edit] UXSimStatus

This returns identical data to the main simulator part of XSimStatus but allows you to explicitly set the URL for retrieving monitoring data rather than having to retrieve a handler with a random UUID. Data is provided in JSON format.

See UXSimStatus

[edit] Show Stats

The show stats facility has a mechanism for fetching data via external calls. Please see the show stats page for more details.

[edit] Web Statistics Module

The Web Statistics Module is a module in OpenSimulator that can provide human readable HTML pages of monitor stated updated dynamically via AJAX. It also stores some historical data (as mentioned above) which is not extractable via external calls. See Web Statistics Module for more details.

[edit] Deprecated mechanisms

These are mechanisms that are deprecated and will be removed in a future OpenSimulator release.

[edit] Monitoring Module

The monitoring module allows one to retrieve region statistics via a URL. Unlike XSimStatus and UXSimStatus one can retrieve statistics per scene rather than just statistics for the scene which sents its stats data last.

All the data available via this module is now available via the Show stats mechanism. The current exception is the ODE specific debug data.

See Monitoring Module

[edit] Other stats facilities

OsGetRegionStats

ServerStats

Cacti

Collectd

Personal tools
General
About This Wiki