Commit Graph

48 Commits

Author SHA1 Message Date
Justin Clark-Casey (justincc)
9a4a513b5e Correct issue where the last instance of a sampled stat was shown 3x larger than it should have been (though internal use was correct) 2013-07-23 23:31:35 +01:00
Justin Clark-Casey (justincc)
76e46d0158 Improve spacing between data and units on console stats display 2013-07-23 17:23:16 +01:00
Justin Clark-Casey (justincc)
90528c23d9 For stats which can show average change over time, show the last sample as well as the average.
This is somewhat cryptic at the moment, need to improve documentation.
2013-07-23 01:13:13 +01:00
Robert Adams
fa02f28dbf Add ToOSDMap() overrides to the Stat subclass CounterStat.
Add a GetStatsAsOSDMap method to StatsManager which allows the filtered
fetching of stats for eventual returning over the internets.
2013-07-12 14:04:14 -07:00
Justin Clark-Casey (justincc)
085a87060a Change "ObjectMemory" stat to "HeapMemory" to align with other stat names. Also round this and ProcessMemory to three decimal places in common with other memory stats.
I believe leaving out such minor info makes stats easier to read
2013-06-20 00:52:39 +01:00
Justin Clark-Casey (justincc)
05790ba1cf Allow more than one stat category to be specified in "show stats"
e.g. "show stats httpserver.9000 server.network"
2013-06-20 00:45:56 +01:00
Justin Clark-Casey (justincc)
5b1a9f84fd minor: Change "memory churn" terminology in statistics to "heap allocation rate" since this is more generally meaningful 2013-06-20 00:32:12 +01:00
Justin Clark-Casey (justincc)
d97333255d Fix minor bug where the check whether to display SmartThreadPool stats was accidentally != null rather than == FireAndForgetMethod.SmartThreadPool
Due to another check this had no practical effect
2013-06-20 00:22:44 +01:00
Justin Clark-Casey (justincc)
086fd70a5f Make it possible to specify display of stats in a particular 'container' by separating category and container with a period.
e.g. "show stats server.network"
I failed to realize this had already been implemented without the period in the show stats command (as the command help had not been updated).
However, I would prefer the . approach as it will allow specifying multiple stats, easier wildcarding, etc.
This commit also prevents any stat from having a period in its short name.
2013-06-20 00:00:39 +01:00
Justin Clark-Casey (justincc)
84af1cab9b Display existing statistic of how many http requests a server is making as server.network.HTTPRequestsMade in "show stats all" 2013-06-19 20:48:12 +01:00
Justin Clark-Casey (justincc)
dda44e31e3 minor: tidy up spacing if display a unit for additional stat information 2013-06-18 23:10:50 +01:00
Justin Clark-Casey (justincc)
9501a583cb Make number of inbound http requests handled available as a httpserver.<port>.IncomingHTTPRequestsProcessed stat 2013-06-18 23:07:18 +01:00
Justin Clark-Casey (justincc)
768e8e363b Fix issue where stat samples were accidentally static, so that any additional stat with sampling would produce wrong results 2013-06-18 22:49:49 +01:00
Justin Clark-Casey (justincc)
a1e32b8437 If SmartThreadPool is active, display statistical information about it in "show stats server"
Also puts these and previous builtin threadpool stats in the "threadpool" stat container rather than "processor"
2013-06-18 00:10:21 +01:00
Justin Clark-Casey (justincc)
865d46ae1e Drop server level stats to debug instead of info.
This was the original intention with these stats, as I didn't believe they would be useful to ordinary users if everything is working as it should.
Please amend if this is an issue.
Just for now, levels actually have no impact on what is displayed via the "show stats" command.
2013-06-17 22:57:47 +01:00
Justin Clark-Casey (justincc)
2c9bb0f973 Add server stats for available builtin threadpool and iocp workers 2013-06-17 22:55:25 +01:00
Justin Clark-Casey (justincc)
0d2fd0d914 Make general server stats available on the robust console as well as the simulator console
This means the "show stats" command is now active on the robust console.
2013-06-17 22:39:00 +01:00
Robert Adams
c2e4f8aed5 For the moment, disable the output of the 'scene' statistics in SimExtraStatsCollector
and thus for the command 'show stats' because it is ugly and most of the information
is already output in the formatted printout that appears before.
2013-03-19 12:37:44 -07:00
Robert Adams
2aae046b95 Make StatsManager default output a little more readable 2013-02-24 07:48:01 -08:00
Robert Adams
9f213892ea Add EventHistogram.GetHistogramAsOSDMap that returns that parameters
about the histogram as well as the values.
2013-02-24 07:48:00 -08:00
Robert Adams
ee8d726ec5 Modify StatsManager so console command "show stats category container"
only outputs the statistics in the specified container in the category.
2013-02-24 07:48:00 -08:00
Robert Adams
76ee47c797 Add a virtual ToOSDMap() function to Monitoring.Stat for future
overloading by aggregation statistics and browser based stat viewers.
2013-02-21 15:53:04 -08:00
Robert Adams
303e21babe Add CounterStat which is a wrapper for a counter stat but, because
the 'count' event is internal, historical data can be built it.
Also includes EventHistogram class for building time based,
bucketed history of event occurances.
Make Stat implement IDisposable for subclasses that might need it.
2013-02-21 15:53:02 -08:00
Robert Adams
681653ca13 Add a method to IStatsCollector for returning stats as an OSDMap.
Extend implementors of IStatsCollector to return an OSDMap of stats.
Update UserStatsCollector and AssetStatsCollector to return both
string and OSDMap data (as well as console format).
2013-02-20 16:13:51 -08:00
Diva Canto
4779f7d7d5 Deleted all AssemblyFileVersion directives 2013-02-19 17:14:55 -08:00
Dan Lake
afeb5d4917 Use SortedDictionary in StatsManager instead of regular Dictionary so stats will interate and print in a defined order 2013-02-14 20:05:42 -08:00
Justin Clark-Casey (justincc)
1f1da23097 Bump version and assembly version numbers from 0.7.5 to 0.7.6
This is mostly Bluewall's work but I am also bumping the general version number
OpenSimulator 0.7.5 remains in the release candidate stage.
I'm doing this because master is significantly adding things that will not be in 0.7.5
This update should not cause issues with existing external binary DLLs because our DLLs do not have strong names
and so the exact version match requirement is not in force.
2013-02-05 00:23:17 +00:00
Justin Clark-Casey (justincc)
84407e322f revert accidental change to MemoryWatchdog stat calculation in previous b1b4687 2013-01-10 01:30:00 +00:00
Justin Clark-Casey (justincc)
b1b4687250 Add "show script timers" command to show script timers. For debug purposes.
Also, "show sensors" changes to "show script sensors".
2013-01-10 00:57:49 +00:00
Justin Clark-Casey (justincc)
55f889cc66 refactor: Move stat classes out of StatManager and into their own files for clarity. 2012-11-16 05:02:06 +00:00
Justin Clark-Casey (justincc)
cd088757e9 Add a first draft mechanism for the IncomingPacketsProcessedStat to show the delta over time.
The chief motivation for this is to be able to tell whether there's any impact on incoming packet processing from enabling extra packet pooling.
2012-11-16 04:36:22 +00:00
Justin Clark-Casey (justincc)
038528dc80 Make PacketPool class stats pull stats instead of push stats so they can be lifted up into LLUDPServer and be distiguished by scene name 2012-11-15 02:02:59 +00:00
Diva Canto
27b12cebbb A few more AssemblyInfos in a few more dlls. 2012-11-14 08:10:15 -08:00
Justin Clark-Casey (justincc)
319ebaca06 Make it possible to turn the base UDP object packet pools on and off whilst running via the "debug lludp pool <on|off>" console command. For debug purposes.
This does not currently apply to the higher LLUDP packetpool.
2012-10-23 02:44:15 +01:00
Justin Clark-Casey (justincc)
4578ff74fe Add object count stats for new IncomingPacket and UDPPacketBuffer pools if they are enabled. Add count stats for existing LLUDP pool.
This introduces a pull stat type in addition to the push stat type.
A pull stat takes a method on construction which knows how to update the stat on request.
In this way, special interfaces for pull stat collection are not necessary.
2012-10-23 01:52:10 +01:00
Justin Clark-Casey (justincc)
4e5b2346a5 Add LastMemoryChurn stat using existing data so we can more quickly tell how memory churn changes rather than waiting for the average to move. 2012-10-16 23:44:52 +01:00
Justin Clark-Casey (justincc)
ab7b7c5d3d Get Watchdog to log thread removal 2012-10-12 02:59:28 +01:00
Justin Clark-Casey (justincc)
59a17ad676 Fix percentage stats to multiply by 100. Adjust container name for packetpool stats. 2012-10-12 00:26:15 +01:00
Justin Clark-Casey (justincc)
387ce8ef35 Fix build break by moving OpenSim.Framework.Console back below HttpServer in the build order.
Luckily, it turns out Framework.Monitoring doesn't need to reference Console directly.
2012-10-12 00:10:51 +01:00
Justin Clark-Casey (justincc)
2e9ef015f7 Fix packetpool for ImprovedTerseObjectUpdate packets.
These were neither being returned or in many places reused.
Getting packets from a pool rather than deallocating and reallocating reduces memory churn which in turn reduces garbage collection time and frequency.
2012-10-11 23:58:37 +01:00
Justin Clark-Casey (justincc)
1f2472d0fc Extend "show stats" command to "show stats [list|all|<category name>]"
This allows different categories of stats to be shown, with options to list categories or show all stats.
Currently categories are scene and simulator and only a very few stats are currently registered via this mechanism.
This commit also adds percentage stats for packets and blocks reused from the packet pool.
2012-10-11 23:28:53 +01:00
Justin Clark-Casey (justincc)
3d36a6d55c Add generic PercentageStat.
Not yet used.
2012-10-04 01:27:40 +01:00
Justin Clark-Casey (justincc)
e717398f6c Add experimental "slow frames" stat, available in "show stats" and via the monitoring module.
This increments a SlowFrames counter if a frame takes over 120% of maximum time.
This commit also introduces a generic OpenSim.Framework.Monitoring.Stat which is available to any code that wants to register a statistic.
This is more granualar than asking objects to create their own reports.
At some point this will supersede earlier IMonitor and IAlert facilities in MonitoringModule which are only available to scene code.
2012-10-04 00:32:42 +01:00
Justin Clark-Casey (justincc)
e4e5237086 When reporting a thread timeout, create a copy of the info rather than passing the original ThreadWatchdogInfo structure.
This is to avoid the possibility of misleading reporting if a watchdog update outraces an alarm.
Should address any remaining issues from http://opensimulator.org/mantis/view.php?id=6012
2012-08-18 00:46:34 +01:00
Justin Clark-Casey (justincc)
5a1b6fdf06 Don't enable the thread watchdog until all regions are ready.
This is to avoid false positives when the machine is under heavy load whilst starting up.
2012-08-15 22:43:32 +01:00
Justin Clark-Casey (justincc)
f3c5ce1bbd minor: Comment out unused MemoryWatchdog.m_churnRatePerMillisecond - this is currently calculated dynamically 2012-07-27 22:20:43 +01:00
Justin Clark-Casey (justincc)
5aec0ff207 Move Watchdog and MemoryWatchdog classes into OpenSim.Framework.Monitoring with other monitoring code from OpenSim.Framework 2012-07-25 23:27:00 +01:00
Justin Clark-Casey (justincc)
35efa88c26 Rename OpenSim.Framework.Statistics to OpenSim.Framework.Monitoring.
This better reflects the long-term purpose of that project and matches Monitoring modules.
2012-07-25 23:11:50 +01:00