Metrics and update checks
What the plugin sends, what it fetches, and how to switch both off.
The plugin talks to three places on the internet. All of it can be turned off, and none of it blocks your server.
| What | Where | How to stop it |
|---|---|---|
| Anonymous stats | bStats | plugins/bStats/config.yml |
| Anonymous stats | ArrowStats | plugins/ArrowStats/config.yml |
| Update check | SpigotMC | update-notifier: false in config.yml |
| Config library | Maven Central, once | Not optional, see below |
Anonymous stats
Two reporting services, both anonymous, both once every half hour on a background thread.
What gets sent:
- Player count and server count
- Minecraft version and server software
- Online mode
- Plugin version
- Java version, operating system, architecture, CPU core count
- Which hologram backend the plugin picked
Nothing about individual players, no IP addresses, no world data.
Set enabled: false in plugins/bStats/config.yml.
That file is shared, so it opts your server out of every plugin using bStats at once, not just this one.
Set enabled: false in plugins/ArrowStats/config.yml.
Also shared, so it covers every plugin using ArrowStats. The same file carries logSentData and logResponseStatusText if you want to see exactly what goes out.
Update check
update-notifier: trueOn startup the plugin asks SpigotMC what the newest published version is. If it is newer than the one you are running, a line goes in the console, and admins get a short message a couple of seconds after they join.
- It runs on a background thread, so it never holds up a start.
- It gives up after five seconds.
- If the check fails, nothing is logged at normal log level. No stack traces, no repeated warnings.
- It only ever reads. Nothing is sent about your server.
Set it to false and no request is made at all.
The config library
On first start the plugin downloads one small library, boosted-yaml, from Maven Central. This is what keeps your config.yml and language files up to date across updates without wiping your settings.
This one is not optional, and it happens before the plugin itself loads. The server fetches it on the plugin's behalf, so on a machine with no outbound internet access at all the plugin will not start, with the failure logged by the server rather than by the plugin.
The download happens once. After that the library is cached by the server and no further request is made, so only the very first start needs the connection.