ServerStatistics v2.0.0-BETA-6

Generate advanced statistics about your server and plugins in an external panel.
5AxhYYA.png

kGePWfY.png

ServerStatistics is a powerful Minecraft server plugin that generates advanced statistics about your server or network. Unlike any other statistics plugin, this plugin focusses on the server/network itself rather than the players on it. Where this plugin shines however is the fact that everything is sent to an external panel, rather than creating a messy in-game setup. Another key feature of this plugin is that it hooks into other plugins as much as possible and generates statistics about those plugins too. If you wish to create statistics about your server using a simple plugin, you're at the right place. You can for example create graphs on how many times the Jesus hack was blocked by a supported anti cheat! How cool is that?!

1vzoC8N.png

This plugin has quite a bit of features, but we try to keep it as simple as possible at the same time. The features of this plugin are as below:
  • Gather detailed, customizable statistics about your server
  • Upload the statistics to an external panel (see requirements section!). Panel demo here.
  • Features a MySQL-like database (see requirements section!)
  • Create beautiful, filtered & timed graphs from your statistics
  • Filter your graphs & statistics per server
  • Extremely lightweight
  • Powerful & completely configurable to your needs & likings

6zPJI41.png

This plugin tries to gather as much statistics as possible. When applicible, even from other plugins (see plugin hooks section). Below we will list the statistics that this plugin gathers by default without any integrations:
  • Player:
    • New joined/registered players
    • Online players
    • Player ping
  • Runtime:
    • Milliseconds per tick (minimum)
    • Milliseconds per tick (average)
    • Milliseconds per tick (maximum)
    • Simple memory usage
    • Ticks per second
    • Incoming packets
    • Outgoing packets
    • JVM class unloaded count
    • JVM class loaded value
    • Process files max value
    • Process files open value
    • JVM GC max data size value
    • JVM GC memory allocated count
    • JVM GC live data size value
    • JVM gc memory promoted count
    • JVM buffer memory used value
    • JVM memory used value
    • JVM buffer count value
    • JVM memory max value
    • JVM buffer total capacity value
    • JVM memory committed value
    • System CPU usage value
    • System CPU count value
    • System load average 1m value
    • Process CPU usage value
    • JVM threads states value
    • JVM threads live value
    • JVM threads daemon value
    • JVM threads peak value
    • Disk free value
    • Disk total value
    • LOG4J2 events count (when applicable)
    • Logback events count (when applicable)
    • Uptime
  • World:
    • Entity count
    • Tile entity count
    • Loaded chunks
Filters on statistics are created through profiles. Some example & community driven profiles can be found here.

c4XkTbW.png

I'm very open for suggestions and I'd gladly add whatever the community asks of me. As for the first release, I added the most popular plugins on SpigotMC that could be used to generate statistics with. If you want me to hook into your plugin, please note that it should be possible for me. Alot of plugins don't have an API and don't have any custom events. It is then already pretty hard for me to add statistics for your plugin. If you want me to hook into your plugin but you have questions, be sure to ask me and I'll gladly help you out. Any suggestions for plugin integrations can be posted in the discussions section.

YNUEtWV.png

This plugin isn't the easiest one to setup, and it will definitely not work if you don't read this requirements section! Since this plugin pushes all statistics to an external panel, you need to make sure that this panel is installed, configured & available to my plugin so it can be used. Below is a list of requirements this plugin has before you can use it. Be sure to read them carefully.
  • A Linux / Windows / MacOSX server (Linux recommended)
    • This plugin makes use of an external panel as mentioned plenty of times. This panel needs to be installed somewhere. Nothing happens in-game! A classic Minecraft host only offers a control panel for your server such as Multicraft or Pterodactyl panel. These kind of hosts do not provide you with a Linux, Windows or MacOSX server, meaning you will have to get one yourself. I recommend the VPS-SSD-1 from OVH (€2,99 a month). It is very cheap and more than enough to run the panel and database on.
  • Grafana
    • Grafana is a free & open source statistics & monitoring panel. This is the panel that is used during development where everything was tested on. It is highly recommended that you use the same panel. If you however feel like using a different panel, you are welcome to use it, but don't leave bad reviews or blame me if it's not working. Installation of Grafana can be found here.
  • InfluxDB or Prometheus
    • InfluxDB is an open source and free MySQL-like time-series database. It works very similar to MySQL as it uses the same query language, only slightly modified to it's purpose. The benefit of InfluxDB is that it works similar to MySQL, so most people will probably feel comfortable with it. On top of this, it's optimized and customized to be a times-series database, which is a type of database used when the time of upload is very important. It's also way faster & uses less storage space than MySQL. Please note: MySQL is NOT supported by me nor Grafana! Installation of InfluxDB can be found here. InfluxDB is typically more easily used in bare-metal servers with no service discovery.
    • Prometheus is a metric collecting database that works the exact opposite as InfluxDB; it downloads the metrics from the software, through an exposed endpoint, rather than the software pushing the metrics. Prometheus works by opening an HTTP server on the client (your Minecraft server) which Prometheus connects to, and will aggregate all of these similar endpoints into one massive endpoint which Grafana can connect to. Prometheus is easier to use in cloud environments, such as Kubernetes, because it can make use of service discovery. Installation of Prometheus can be found here.

WB6tbbt.png

Enough words said about the features for now. Let's look at some actual graphs from real world customers with actual public servers.

8XRrb4J.png


scoKvQn.png

I've said it multiple times in the thread, but I'm going to list a few important things below that people may have missed or falsely assumed when purchasing the plugin. Make sure to read them carefully as I will not provide you any cash back!
  • This plugin focuses on the perspective of the server, not the player. This plugin will NOT generate any statistics nor filters that can be used to target specific players! Please see the The Statistics section on what statistics are generated and what filters can be used on them. See the Suggestions section if you feel like something is missing.
  • You need a Linux / Windows / MacOS server (Linux recommended) to install the panel and database on!
  • Nothing is done in-game! Nothing! Everything is pushed to an external panel (Grafana recommended) which is required! Installation can be found here.
  • MySQL is NOT and will NOT be supported any soon! MySQL is simply not suited for this job. You need an InfluxDB database! You need an InfluxDB database or Prometheus server.
  • This plugin is NOT easy to use and is NOT straight forward. If you have no experience with system monitoring, or the usage of any of the externally required software such as Grafana, InfluxDB or Prometheus, then you will likely have a hard time getting started. In such case, I would recommend trying free alternatives of my software until you are comfortable in this field.

uYWRkjM.png

Grafana is the official supported panel for this plugin. I will not provide support to people using a different one and having issues with it. A disclaimer I'd like to mention is that my plugin merely gets the statistics and pushes them to an external panel. The statistics that are sent is just raw data. It is completely up to you how you use these statistics. As it's all pushed to an external panel, you cannot ask of me to magically create a dashboard where all statistics are suddenly visible in the most practical and beautiful way possible. You will have to play around with Grafana (or any other panel if you wish so) and understand how it works so you can put these statistics to use.

Also please note the following: When a graph in your panel seems incorrect, it is 99 of 100 times your fault: InfluxDB for example allows the creation of very advanced queries. These queries are what make the data of use, not my plugin. Do NOT leave bad reviews about my plugin if your graphs are incorrect! See the Tips 'n Tricks section for a little more explanation or ask me directly for help.

Grafana, InfluxDB or Prometheus are not owned nor developed by me. They are simply fantastic softwares used for system monitoring.


v4atAI2.png

When I just installed Grafana, I just clicked around a little and thought it was good. I was wrong. Just because you're seeing a graph doesn't mean it's correct. That also goes for single-stat values. For example you may have a single-stat value displaying the current player count on your server. But it says you have 43,57 players? Is that a bug in my plugin? No! That's an InfluxDB query not set up correctly as it most likely gets the average (mean) and thus creates a weird number. For the player count for example, you'd want to use the last function. Which gets the last uploaded player count in the database. This results in a correct graph and single-stat value.

InfluxDB is not part of my plugin and neither is it something I have power over. However, I can truely imagine some people having difficulties with it. I therefore will provide support in the Discussions section if you need help with setting up a graph. Again, please do NOT leave a bad review because you can't figure out how to get it working! That is not my fault, but I'll gladly help you out getting it to work! Just ask me in the Discussions.

iQasSzW.png

I want tot improve this plugin as much as possible. Below you will find a list of features I have on my list that are yet to be developed. Currently, all are planned to go into v2. Please check the resource updates, as some of the below are implemented in the current alpha versions of v2.
  • Pre-made (and community provided) dashboards
  • In-game alerts
  • ElasticSearch support
  • Managed Grafana & datasource hosting (for an additional monthly fee)
For a demo of Grafana, go here. It is obviously not linked up to our plugin, but it will definitely show off the possibilities of Grafana and why I decided to make it the official supported panel for this plugin.

B3ZnCZS.png

By purchasing & downloading our plugin, you agree with the terms of service.
  • The review section is not a way of getting support. If you want support, use the Discussions section or private-message me. Leaving a bad review is unfair and not appreciated. I will NOT provide you support if you ignore this and leave a bad review just because you need support! Ask me for support!
  • You may only use this plugin on one server network (large networks are considered one server). You are not allowed to use the plugin on two clearly separate server organizations.
  • You may not redistribute or share this plugin with anyone outside, unless explicitly necessary to setup the plugin within your own network (sharing it with your own administration team for install). For freelancing system administrators; don't buy this plugin once and reuse it on all your customers.
  • You are responsible for what you do with the statistics generated by this plugin. I am not responsible for how you create graphs in your panel! If you believe some statistics are incorrect, see the Tips 'n Tricks section where I've explained what may be going on. If you still can't figure it out, ask me and I'll help you out. Not every graph with incorrect statistics is instantly a plugin issue.
  • You are responsible for what happens to this plugin after you downloaded it.
  • I only give support to the accounts who purchased the plugin. No excuses of your friend, developer, admin, owner, etc purchasing it!
  • If you wish to use this plugin on multiple networks, contact me.
  • You will not charge back.

dqTlOxI.png

After you purchased the plugin, it is time to get yourself comfortable with Grafana after you installed everything (see the Requirements section). Play around with it so you can create beautiful & correct graphs that really help you out keeping an eye on your network.

If you feel like this plugin doesn't provide enough statistics, be sure to leave a suggestion. Check out the Suggestions section above. I'll happily embrace any suggestions given to me.

If you like what I created, be sure to leave a review. It helps me out and keeps me motivated on updating & improving this plugin.

Latest updates

  1. v2.0.0 BETA 6

    Bugfixes Fixed a bug in the profiling system where different statistics got mixed up, and the...
  2. v2.0.0 BETA 5

    Bugfixes Fixed a startup issue with some of the Micrometer metrics on older Spigot / Paper...
  3. v2.0.0 BETA 4

    Features The following statistics have been re-implemented (they were already available in v2...

Latest reviews

For anyone willing to go through the setup process (which can be tricky) - the end product is definitely worth it! Overall great performance, fast support - the author helped me with some questions and quickly fixed bugs that I found.

ServerStatistics is ideal for anyone who likes to collect useful data of their server(s) - that is exactly what I love to do and this plugin is the best solution for that.
10/10, love the plugin. The most informed I've been about performance in ages. Support is super fast even for dumb questions.
Recently set up 2.0, good stuff, plugin event integration and good support.
Amazing plugin with an amazing creator. Can't wait for V2!
This plugin is an AWESOME way to track stats on your server/network. We love the ability to see historical player counts / TPS / entities / chunks - it makes it super easy to track issues with performance and generally see what is going on in your network.

Highly recommend, especially with the very active and responsive developer, he immediately helped me solve the issue I had during setup!
This is an excellent plugin. If you have a concern with performance, you shouldn't. My servers that can hold 500+ players on a single instance has had no issue. The author replies very quickly too.
I am not a DevOps person myself, but Grafana is one of the best tools out there for monitoring servers. It is exiting that MrDienns is developing this amazing hook that shapes our community tech-stack into what modern technology is becoming.

Thank you!
5 Stars
Excellent plugin, does what it says and great developer.
Fast, does exactly as it says it does, easy to setup, amazing support. Developer is highly experienced working with data structures. The hooks into other plugins allow ease of monitoring the usage of a server in the way no other plugin allows you to do.
MrDienns
MrDienns
Thank you, I'm glad you like it.
Awesome resource with an active and helpful dev
MrDienns
MrDienns
Thank you! Hope you'll enjoy it.

Author

MrDienns

Owner
Author
MrDienns
Downloads
51
Type
Digital product
License duration
Unlimited
Price
19.99 EUR
Views
8,232
First release
Last update
Rating
5.00 star(s) 12 ratings
Top
You need to upgrade!
Our dark style is reserved for our Premium members. Upgrade here.