Load Statistic Plugin Readme
On 29 October 2020, this git repository was rewritten to remove unrelated history to this plugin.
The statistic plugin prints usage information of the database connection pool, thread pool used for processing
incoming traffic and the NIO networking layer.
Copy the file, "statistic.jar" into the plugins directory of your Openfire installation. The plugin will
then be automatically deployed.
At the moment there is no new page to configure the plugin. However, the plugin can be configured by setting
a few system properties. Read the "Using the Plugin" section to learn which system properties to use.
Using the Plugin
The plugin will collect information every few seconds and will print the collected information to a log file
every minute. The log file is a comma delimited file that can be easily processed in Excel. You can configure
the plugin by setting the system properties shown in the table below.
Number of milliseconds to wait before collecting information. Default value is 5000 (5 seconds)
Name of the file to use to store the statistics. The file will always be stored in the logs folder. Default value is "stats.txt".
True if statistics will be collected for Connection Managers traffic or false when statistics will be collected for clients directly connected to the server. Default value is "false".
The format of the log file is the following:
When processing the file in Excel you may want to add the following columns:
- Timestamp - Timestamp when the data was collected
- DB min - Minimum number of connections the pool may have
- DB max - Maximum number of connectiosn the pool may have
- DB current - Current number of connections the pool has
- DB used - Current number of connections being used
- Core Threads - Number of threads for processing incoming traffic
- Active Threads - Number of threads that are actually processing incoming traffic
- Queue Tasks - Number of stanzas stored in the queue when all threads where busy
- Completed Tasks - Total number of stanzas that were processed
- Sessions - Current number of client sessions in the server
- NIO Read - Total number of stanzas that were read
- NIO Written - Total number of stanzas that were sent
- Queued NIO events - Current number of stanzas that are queued. Stanzas are queued when the same client sends many stanzas and the server is still processing a previous stanza. Queued stanzas are not yet considered read.
- Queues NIO writes - Current number of stanzas pending to be sent
Excell charts are a great way for understanding the collected statistics. In particular, we found charts
of the following columns useful.
- NIO Reads Delta - Difference between a NIO Read row and its previous row
- NIO Writtens Delta - Difference between a NIO Written row and its previous row
- Sessions delta - Difference between a Sessions row and its previous row
- NIO Read and NIO Written
- NIO Reads Delta and NIO Writtens Delta
- Sessions delta
- Completed Tasks
- DB used
- Active Threads