Monitoring serwera Minecraft: Spark, Plan i więcej

Twój serwer Minecraft działa, gracze są online i wszystko wydaje się płynne. Dopóki nie przestaje. TPS spada, gracze narzekają na lag, a Ty nie masz pojęcia, gdzie leży problem. Monitoring zapobiega temu scenariuszowi. Z odpowiednimi narzędziami widzisz dokładnie, co robi Twój serwer, które pluginy zużywają najwięcej zasobów i gdzie jest wąskie gardło.

TPS i MSPT: podstawy

Zanim skonfigurujesz monitoring, musisz zrozumieć, co mierzysz. Minecraft działa na systemie ticków: 20 ticków na sekundę (TPS) to ideał. Każdy tick serwer przetwarza całą logikę: moby się poruszają, bloki się aktualizują, gracze są przetwarzani. Jeśli tick trwa dłużej niż 50 milisekund, TPS spada poniżej 20 i zauważasz opóźnienie.

MSPT (milisekundy na tick) to odwrotna miara. MSPT 40 ms oznacza, że serwer obsługuje każdy tick w 40 ms, co mieści się w limicie 50 ms. MSPT 60 ms oznacza problemy: serwer nie nadąża i TPS spada.

Poleceniem /tps na Paper widzisz migawkę, ale to nie mówi Ci, gdzie leży problem. Do tego potrzebujesz profilowania i monitoringu.

Spark: profiler, którego potrzebujesz

Spark to standardowy profiler serwerów Minecraft. Jest lekki, działa jako plugin lub mod i daje głęboki wgląd w to, co robi Twój serwer. Najważniejsze funkcje:

  • Profilowanie CPU: poleceniem /spark profiler start Spark rozpoczyna sesję profilowania. Po kilku minutach zatrzymujesz go i otrzymujesz interaktywny raport pokazujący, które metody (a więc które pluginy) zużywają najwięcej czasu CPU.
  • TPS i czas ticka: /spark tps pokazuje TPS z różnych okresów. /spark tickmonitor ostrzega, gdy poszczególne ticki trwają za długo.
  • Analiza pamięci: Spark może wykonać heap dump i zwizualizować zużycie pamięci. Przydatne, gdy serwer powoli zużywa coraz więcej pamięci (memory leak) bez wyraźnej przyczyny.

Raporty są przesyłane do przeglądarki online, gdzie możesz je interaktywnie eksplorować. Udostępnij link współpracownikom lub supportowi, jeśli potrzebujesz pomocy przy analizie.

Plan: statystyki graczy i serwera

Podczas gdy Spark skupia się na analizie wydajności, Plan oferuje szerszy przegląd. Plan to plugin analityczny śledzący, kto kiedy jest online, jak długo gracze grają, które obszary są popularne i jak serwer radzi sobie w dłuższych okresach.

Po instalacji Plan uruchamia serwer WWW (domyślnie na porcie 8804), gdzie otwierasz dashboard. Najważniejsze widoki:

  • Przegląd serwera: TPS, zużycie pamięci, zużycie CPU i liczba graczy w czasie na przejrzystych wykresach.
  • Strony graczy: dla każdego gracza widzisz czas gry, sesje, statystyki PvP i wzorce aktywności.
  • Dane pluginów: Plan może integrować dane z innych pluginów, takie jak statystyki ekonomii (Vault) i informacje o frakcjach.

Plan przechowuje dane w bazie danych (domyślnie SQLite, MySQL zalecany dla większych serwerów). Interfejs webowy jest zabezpieczony kontami i uprawnieniami, aby tylko administratorzy mieli dostęp do wrażliwych informacji.

Grafana i Prometheus: dla zaawansowanych administratorów

Jeśli zarządzasz wieloma serwerami lub chcesz głębszej analizy, kombinacja Prometheus i Grafana to standard branżowy. Prometheus zbiera metryki, Grafana wizualizuje je w konfigurowalnych dashboardach.

Dla Minecrafta używasz pluginu eksportera udostępniającego metryki serwera dla Prometheus. Plugin publikuje dane takie jak TPS, pamięć, liczba graczy i statystyki poszczególnych światów na endpoincie, który Prometheus okresowo odczytuje.

W Grafanie tworzysz dashboardy pokazujące dokładnie to, co jest dla Ciebie ważne. Połącz to z alertingiem: ustaw ostrzeżenie, które wyśle Ci wiadomość (przez webhook Discord lub e-mail), gdy TPS spadnie poniżej 18 lub pamięć przekroczy 90%.

Ta konfiguracja wymaga osobnej maszyny lub VPS, na którym działają Prometheus i Grafana. To więcej pracy przy ustawianiu, ale elastyczność i przegląd są niezrównane dla poważnych administratorów serwerów.

Wbudowane narzędzia serwerowe

Nie zapominaj o wbudowanych narzędziach. Paper oferuje standardowo przydatne polecenia:

  • /timings: własny profiler Paper. Mniej szczegółowy niż Spark, ale dostępny bezpośrednio bez dodatkowych pluginów.
  • /gc: pokazuje informacje o pamięci i statystyki garbage collection.
  • /worlds: pokazuje dla każdego świata, ile chunków i entity jest załadowanych.

Na poziomie systemu operacyjnego możesz za pomocą htop (Linux) lub Menedżera zadań (Windows) obserwować ogólne zużycie CPU i pamięci. Połącz to z narzędziami w grze dla pełnego obrazu.

Monitoring jako nawyk

Siła monitoringu nie polega na reagowaniu na problemy, ale na ich zapobieganiu. Sprawdzaj codziennie swoje dashboardy, nawet gdy nie ma skarg. Trendy w zużyciu pamięci, powoli rosnące MSPT lub spadające liczby graczy dają Ci szansę na interwencję, zanim stanie się to problemem.

Czy plugin monitorujący spowalnia mój serwer?

Minimalnie. Spark jest zaprojektowany tak, aby być jak najlżejszy i nie ma zauważalnego wpływu na wydajność, gdy aktywnie nie profilujesz. Plan zużywa nieco więcej zasobów przez ciągłe zbieranie danych, ale na serwerze z wystarczającą ilością RAM (4 GB lub więcej) nie odczujesz tego.

Czy mogę przeglądać monitoring zdalnie?

Tak. Plan uruchamia serwer WWW, do którego masz dostęp przez przeglądarkę. Grafana i tak jest oparta na przeglądarce. Raporty Spark przesyłasz do przeglądarki online i otwierasz je gdziekolwiek chcesz. Nie musisz być w grze, aby monitorować serwer.

Które narzędzie zainstalować jako pierwsze?

Zacznij od Spark. To najbardziej uniwersalne narzędzie, natychmiast gotowe do użycia, pozwalające szybko ustalić, skąd biorą się problemy z wydajnością. Dodaj Plan, jeśli chcesz też śledzić statystyki graczy i długoterminowe trendy. Przejdź na Grafanę i Prometheus, jeśli zarządzasz wieloma serwerami lub potrzebujesz zaawansowanego alertingu.

Prowadzisz już serwer Minecraft u nas? W HostValues Minecraft hosting instalujesz Spark i Plan kilkoma kliknięciami w panelu gier.


Nadal masz pytania? Utworz ticket, a nasz zespol Ci pomoze.

Powrot do bloga