Skip to content

Analisi dei Crash ​

AbsoluteSolver offre tre sistemi distinti di analisi dei crash che lavorano insieme per garantire che, qualunque sia il modo in cui il tuo server è morto, Fyrx sarà lì a spiegarlo.

Analisi Post-Mortem (Scansione all'Avvio) ​

Quando il tuo server si avvia, AbsoluteSolver cerca nuovi crash report che non erano presenti nella sessione precedente.

Come funziona:

  1. Su onEnable, il plugin scansiona la cartella crash-reports/
  2. Confronta l'elenco dei file con un registro data.yml dei report già analizzati
  3. Se viene trovato un nuovo report, lo legge e lo invia a Fyrx insieme alle ultime 100 righe di latest.log
  4. L'analisi di Fyrx viene stampata in console prima che il server finisca di avviarsi

Tipi di crash report supportati:

TipoSorgenteDescrizione
Crash Report Minecraftcrash-reports/*.txtDump di crash standard di Minecraft/Paper
Crash Nativo JVMhs_err_pid*.logErrori fatali della JVM (SIGSEGV, fallimenti JNI, corruzione della memoria)

Crash Nativi della JVM

Un file hs_err_pid viene generato quando è Java stesso a crashare — non solo Minecraft. Questi crash sono tipicamente causati da una libreria nativa danneggiata (come un driver GPU), corruzione della memoria, o una chiamata JNI errata da parte di una mod. Fyrx analizza le prime 200 righe, che contengono le informazioni più critiche.

Rilevamento Errori di Avvio Precoce ​

Questo sistema cattura gli errori che si verificano dopo l'avvio della JVM ma prima che venga eseguito l'onEnable di AbsoluteSolver. Questi errori sono comunemente causati da:

  • Incompatibilità di versione dei plugin
  • Dipendenze mancanti
  • Conflitti di caricamento delle classi (due plugin che usano versioni diverse della stessa libreria)

Come funziona:

  1. AbsoluteSolver legge logs/latest.log in modo asincrono all'avvio
  2. Scansiona le righe contenenti ERROR]: o WARN]: fino alla riga [AbsoluteSolver] Enabling
  3. Se vengono trovati errori, vengono inviati a Fyrx per l'analisi
  4. L'analisi completa viene stampata immediatamente in console

Esempio di cosa viene catturato:

[ServerMain/ERROR]: Could not load 'plugins/MyPlugin.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: Unsupported API version 1.21

Analisi Manuale ​

Puoi attivare in qualsiasi momento un'analisi manuale del crash report più recente:

/absolutesolver analyze-last

Utile se AbsoluteSolver non ha catturato automaticamente il crash (ad esempio, il plugin non era caricato durante la sessione del crash).

Configurazione ​

yaml
check-crash-on-startup: true    # Enable post-mortem scanning on boot
monitor-console: true           # Enable early startup error detection

Solver e Noteblock: Tutti i diritti riservati · Altri prodotti: Licenza MIT.