Omawiamy, z czego składa się dobry komunikat logu (czas, poziom
INFO/
ERROR, nazwa loggera, tekst, stack trace), jak poprawnie formatować wpisy za pomocą szablonów SLF4J/Log4j2 (
"{}" zamiast konkatenacji), jak logować wyjątki (
logger.error(..., ex)), kiedy używać poziomów
ERROR/
WARN/
INFO/
DEBUG/
TRACE, a także najlepsze praktyki: bez danych wrażliwych, zrozumiałe komunikaty, identyfikatory korelacyjne (
orderId,
userId) i właściwa konfiguracja
log4j2.xml.