From f3f7afab4d023476e13145a56552870274cf28e1 Mon Sep 17 00:00:00 2001 From: Git Manager GUI Date: Thu, 18 Jun 2026 21:28:13 +0200 Subject: [PATCH] Upload folder via GUI - src --- .../java/de/serverpulse/alerts/AlertManager.java | 15 +++++++++++++++ .../java/de/serverpulse/utils/ConfigManager.java | 4 ++++ src/main/resources/bungee.yml | 2 +- src/main/resources/config.yml | 2 +- src/main/resources/plugin.yml | 2 +- 5 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/serverpulse/alerts/AlertManager.java b/src/main/java/de/serverpulse/alerts/AlertManager.java index c7d44be..cdd4b3c 100644 --- a/src/main/java/de/serverpulse/alerts/AlertManager.java +++ b/src/main/java/de/serverpulse/alerts/AlertManager.java @@ -25,6 +25,10 @@ public class AlertManager { // Standard-Cooldown: 5 Minuten private static final long DEFAULT_COOLDOWN_MS = 5 * 60 * 1000; + // Startup-Grace-Period + private final long pluginStartTimeMs = System.currentTimeMillis(); + private final long startupGracePeriodMs; + // Zähler für kritische Ereignisse (für Auto-Diagnose) private int criticalEventCount = 0; @@ -33,6 +37,7 @@ public class AlertManager { public AlertManager(ServerPulse plugin) { this.plugin = plugin; + this.startupGracePeriodMs = plugin.getConfigManager().getStartupCheckDelayMinutes() * 60_000L; } // ────────────────────────────────────────── @@ -44,6 +49,12 @@ public class AlertManager { */ public void triggerAlert(String alertType, AlertSeverity severity, String worldName, String message, Double currentValue, Double threshold) { + // Startup-Grace-Period prüfen + if (isStartupGracePeriodActive()) { + plugin.debug("Startup-Delay aktiv: Alert unterdrückt (" + alertType + ")"); + return; + } + // Cooldown prüfen String cooldownKey = alertType + (worldName != null ? "_" + worldName : ""); long now = System.currentTimeMillis(); @@ -211,4 +222,8 @@ public class AlertManager { public int getCriticalEventCount() { return criticalEventCount; } + + private boolean isStartupGracePeriodActive() { + return System.currentTimeMillis() - pluginStartTimeMs < startupGracePeriodMs; + } } diff --git a/src/main/java/de/serverpulse/utils/ConfigManager.java b/src/main/java/de/serverpulse/utils/ConfigManager.java index 12d6e88..3fcb903 100644 --- a/src/main/java/de/serverpulse/utils/ConfigManager.java +++ b/src/main/java/de/serverpulse/utils/ConfigManager.java @@ -48,6 +48,10 @@ public class ConfigManager { return config.getInt("general.data-retention-days", 90); } + public int getStartupCheckDelayMinutes() { + return Math.max(0, config.getInt("general.startup-check-delay-minutes", 5)); + } + // ────────────────────────────────────────── // DATENBANK // ────────────────────────────────────────── diff --git a/src/main/resources/bungee.yml b/src/main/resources/bungee.yml index a864c1c..b42e6fe 100644 --- a/src/main/resources/bungee.yml +++ b/src/main/resources/bungee.yml @@ -1,5 +1,5 @@ name: ServerPulse -version: '1.0.0' +version: '1.0.1' main: de.serverpulse.bungee.BungeePlugin author: ServerPulse-Team description: ServerPulse BungeeCord Module (unified JAR) diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index 7039c40..6e93902 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -1,5 +1,5 @@ # ╔══════════════════════════════════════════╗ -# ║ ServerPulse v1.0.0 Configuration ║ +# ║ ServerPulse v1.0.1 Configuration ║ # ║ Unified JAR – Spigot / Paper / Bungee ║ # ╚══════════════════════════════════════════╝ # diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 24a9afe..6127c62 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,5 +1,5 @@ name: ServerPulse -version: '1.0.0' +version: '1.0.1' main: de.serverpulse.spigot.SpigotPlugin api-version: '1.21' description: Monitoring & Analytics Suite (Spigot/Paper/BungeeCord unified)