Cubxity / UnifiedMetrics

Fully-featured metrics collection agent for Minecraft servers. Supports Prometheus and InfluxDB. Dashboard included out-of-box.
GNU Lesser General Public License v3.0
428 stars 37 forks source link

Log client types of users. #115

Open juncture6825 opened 7 months ago

juncture6825 commented 7 months ago

Is there an existing feature request for this?

Describe the feature you would like to see.

A Minecraft client sends a string to the server which contains the client type (forge/fabric/optifine/vanilla/etc), version, and list of mods installed if applicable. I've listed an open source plugin below that does this.

This should be logged, it would be useful to see what's the most common client or what's the most common version (if you run ViaVersion for example). Currently no Minecraft metrics logger like PLAN support this, but I feel like this would give Unified Metrics an edge over the alternatives.

It would be nice if this was logged and you could visualize it with a chart on Grafana.

Client Detector Plugin: https://www.spigotmc.org/resources/clientdetector-client-mod-detection-forge-mod-detection-clientcontrol.90375/

How would you like to see this implemented?

Logs client info into Prometheus database.

Additional information to this request.

No response

Cubxity commented 7 months ago

The client brand can easily be measured via the various server APIs supported by UnifiedMetrics. However, client brand would possibly have high cardinality and may pose some issues since it's user-controlled and this may be used by the user to exhaust your storage/resources.

That being said, this is a valid suggestion and may be implemented as a non-default option in the config, or an extension plugin on top of UnifiedMetrics in the future. If anyone is interested in implementing this, feel free to comment in the PR.