Add metrics

This commit is contained in:
PiggyPiglet
2026-02-14 20:37:36 +08:00
parent 4230595618
commit 41bb27cf6b
6 changed files with 146 additions and 19 deletions

View File

@@ -4,8 +4,10 @@ import at.helpch.placeholderapi.commands.PlaceholderCommandRouter;
import at.helpch.placeholderapi.configuration.ConfigManager;
import at.helpch.placeholderapi.expansion.manager.CloudExpansionManager;
import at.helpch.placeholderapi.expansion.manager.LocalExpansionManager;
import at.helpch.placeholderapi.metrics.MetricsManager;
import at.helpch.placeholderapi.updatechecker.UpdateChecker;
import com.hypixel.hytale.event.EventPriority;
import com.hypixel.hytale.server.core.HytaleServer;
import com.hypixel.hytale.server.core.command.system.CommandSender;
import com.hypixel.hytale.server.core.console.ConsoleSender;
import com.hypixel.hytale.server.core.event.events.BootEvent;
@@ -13,8 +15,12 @@ import com.hypixel.hytale.server.core.event.events.PrepareUniverseEvent;
import com.hypixel.hytale.server.core.event.events.player.PlayerDisconnectEvent;
import com.hypixel.hytale.server.core.plugin.JavaPlugin;
import com.hypixel.hytale.server.core.plugin.JavaPluginInit;
import com.hypixel.hytale.server.core.task.TaskRegistration;
import org.jetbrains.annotations.NotNull;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
public class PlaceholderAPIPlugin extends JavaPlugin {
private final ConfigManager configManager = new ConfigManager(this);
private final LocalExpansionManager localExpansionManager = new LocalExpansionManager(this);
@@ -36,6 +42,14 @@ public class PlaceholderAPIPlugin extends JavaPlugin {
protected void setup() {
configManager.setup();
if (configManager.config().metrics()) {
final MetricsManager metricsManager = new MetricsManager(this);
final ScheduledFuture<Void> task = (ScheduledFuture<Void>) HytaleServer.SCHEDULED_EXECUTOR.scheduleAtFixedRate(() -> {
metricsManager.send();
}, 30, 30, TimeUnit.SECONDS);
getTaskRegistry().registerTask(task);
}
getEventRegistry().register(PlayerDisconnectEvent.class, localExpansionManager::onQuit);
getEventRegistry().register(EventPriority.LAST, BootEvent.class, this::onServerLoad);