Logging von unbehandelten Anwendungsfehlern im Mainthread in Java: Unterschied zwischen den Versionen

(Ursache und Lösung)
Zeile 2: Zeile 2:
 
In Java ist es einfach möglich unbehandelte Ausnahmen zu verarbeiten um diese zum Beispiel zu protokollieren.<br />
 
In Java ist es einfach möglich unbehandelte Ausnahmen zu verarbeiten um diese zum Beispiel zu protokollieren.<br />
 
=== '''Ursache und Lösung''' ===
 
=== '''Ursache und Lösung''' ===
Um bei einem unbehandelten Fehlerfall einer Anwendung (eines Threads) wenigstens noch den Fehler protokollieren zu können,<br />
+
Um bei einem unbehandelten Fehlerfall einer Anwendung (eines Threads) wenigstens noch den Fehler protokollieren zu können, bietet es sich an, dem Thread einen ''DefaultUncaughtExceptionHandler'' zu übergeben.<br /><br />
bietet es sich an, dem Thread einen ''DefaultUncaughtExceptionHandler'' zu übergeben.<br /><br />
 
 
Das geht ganz einfach via:<br />
 
Das geht ganz einfach via:<br />
 
''{code}<br />''
 
''{code}<br />''
 
''Thread.setDefaultUncaughtExceptionHandler((thread, exc) -> log.error("Unbehandelte Ausnahme in der Anwendung", exc)); <br />''
 
''Thread.setDefaultUncaughtExceptionHandler((thread, exc) -> log.error("Unbehandelte Ausnahme in der Anwendung", exc)); <br />''
 
''{code}<br />''
 
''{code}<br />''
 +
 
=== '''Tags''' ===
 
=== '''Tags''' ===
 
unbehandelte Ausnahme, Java, Logging
 
unbehandelte Ausnahme, Java, Logging

Version vom 14. Mai 2020, 13:36 Uhr

Symptom

In Java ist es einfach möglich unbehandelte Ausnahmen zu verarbeiten um diese zum Beispiel zu protokollieren.

Ursache und Lösung

Um bei einem unbehandelten Fehlerfall einer Anwendung (eines Threads) wenigstens noch den Fehler protokollieren zu können, bietet es sich an, dem Thread einen DefaultUncaughtExceptionHandler zu übergeben.

Das geht ganz einfach via:
{code}
Thread.setDefaultUncaughtExceptionHandler((thread, exc) -> log.error("Unbehandelte Ausnahme in der Anwendung", exc));
{code}

Tags

unbehandelte Ausnahme, Java, Logging

Kontakt

Wenn Sie Fragen oder Anmerkungen zu diesem Artikel haben, melden Sie sich bitte bei uns:
techcorner@max-it.de.

Über m.a.x. Informationstechnologie AG:
Als etabliertes Münchner Systemhaus zeichnen wir uns seit 1989 als verlässlicher IT-Partner mittelständischer und
großer Unternehmen aus. Unser Portfolio reicht von IT- Services über individuelle Softwareentwicklung bis hin zur ERP-Beratung.