Make separate metrics for players in different worlds

This commit is contained in:
RuscalWorld 2021-05-25 00:28:10 +03:00
parent a4c4b144f8
commit 0961890d47
No known key found for this signature in database
GPG key ID: 4F53776031D128ED

View file

@ -1,14 +1,17 @@
package ru.ruscalworld.fabricexporter.metrics; package ru.ruscalworld.fabricexporter.metrics;
import net.minecraft.server.world.ServerWorld;
import ru.ruscalworld.fabricexporter.FabricExporter; import ru.ruscalworld.fabricexporter.FabricExporter;
public class OnlinePlayers extends Metric { public class OnlinePlayers extends Metric {
public OnlinePlayers() { public OnlinePlayers() {
super("players_online", "Amount of currently online players on the server"); super("players_online", "Amount of currently online players on the server", "world");
} }
@Override @Override
public void update(FabricExporter exporter) { public void update(FabricExporter exporter) {
this.getGauge().set(exporter.getServer().getCurrentPlayerCount()); for (ServerWorld world : exporter.getServer().getWorlds()) {
this.getGauge().labels(world.getRegistryKey().getValue().getPath()).set(world.getPlayers().size());
}
} }
} }