XSimStatus
From OpenSimulator
(New page: This old facility provides a way to retrieve some very basic region data and some more detailed information about the simulator as a whole. It is always active. Each region will register...) |
Revision as of 12:07, 10 October 2011
This old facility provides a way to retrieve some very basic region data and some more detailed information about the simulator as a whole. It is always active.
Each region will register a URL handler with a random UUID. There will also be handler that will return data for the simulator as a whole. These UUIDs will be different on each restart of the simulator (yes this is insane).
So a two region simulator will have three handlers, one for each simulator and one for the simulator as a whole.
Sending a GET request to a handler will return data in JSON format.
You can see these handlers using the region console command
show http-handlers
In the last section you should see something like
* StreamHandlers (7): POST:/friends GET:/map GET:/get_grid_info GET:/F27ED466A0D311F8A7B1F309F942437F3302D455 GET:/493F5C64F8AF200E63C9A33EA92BD393D9232A61 GET:/simstatus GET:/1B71AB5959171C2308F429E8F397F0390ADEF94D
Here, F27ED466A0D311F8A7B1F309F942437F3302D455, 493F5C64F8AF200E63C9A33EA92BD393D9232A61 and 1B71AB5959171C2308F429E8F397F0390ADEF94D are XSimStatus handlers. Unfortunately, it's not possible to tell which are which except by pointing your browser at them. Let's suppose you are running a standalone on 192.168.1.2 with an HTTP listener port of 9000. In this case, going to
http://192.168.1.2:9000/F27ED466A0D311F8A7B1F309F942437F3302D455
yields
{ "OSStatsURI":"http://192.168.1.2:9000/1B71AB5959171C2308F429E8F397F0390ADEF94D/", "TimeZoneName":"GMT", "TimeZoneOffs":1.0, "UxTime":1318276065, "Memory":31.0, "Version":"OpenSim 0.7.3 Dev " }
This is data for a particular region. In the OSStatsURI field it does give the statistics handler for the simulator as a whole. Sending a get request to http://192.168.1.2:9000/1B71AB5959171C2308F429E8F397F0390ADEF94D/ returns
{ "AssetsInCache":"0", "TimeAfterCacheMiss":"0", "BlockedMissingTextureRequests":"0", "AssetServiceRequestFailures":"0", "abnormalClientThreadTerminations":"0", "InventoryServiceRetrievalFailures":"0", "Dilatn":"1", "SimFPS":"56.67", "PhyFPS":"46.93", "AgntUp":"0", "RootAg":"0", "ChldAg":"0", "Prims":"1", "AtvPrm":"0", "AtvScr":"1", "ScrLPS":"0", "PktsIn":"0", "PktOut":"0", "PendDl":"0", "PendUl":"0", "UnackB":"0", "TotlFt":"0.67", "NetFt":"0", "PhysFt":"0.33", "OthrFt":"0", "AgntFt":"0.33", "ImgsFt":"0", "Memory":"21", "Uptime":"00:20:49.0991070", "Version":"OpenSim 0.7.3 Dev 013bf27" }
Unfortunately, the simulator stats here are only for one region. In a multi-region simulator which one this is is not defined and will change depending on exactly when the URL is called. Also, the top 6 statistics (AssetsInCache to InventoryServiceRetrievalFailures) are not currently in use.