Kapitel 8. GC Logging, Überwachung, Tuning und Tools
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
In diesem Kapitel führen wir in das große Thema GC-Logging und -Monitoring ein.Dies ist einer der wichtigsten und sichtbarsten Aspekte des Java-Performance-Tunings, aber auch einer der am häufigsten missverstandenen.
Einführung in das GC Logging
Das GC-Protokoll ist eine großartige Informationsquelle. Es ist besonders nützlich für die "Cold Case"-Analyse von Leistungsproblemen, z.B. um einen Einblick zu bekommen, warum ein Absturz aufgetreten ist. Es kann dem Analysten ermöglichen, zu arbeiten, auch wenn kein aktiver Anwendungsprozess zu diagnostizieren ist.
Jede ernsthafte Bewerbung sollte immer:
-
Erstelle ein GC-Protokoll.
-
Bewahre sie in einer von der Anwendungsausgabe getrennten Datei auf.
Das gilt besonders für Produktionsanwendungen. Wie wir noch sehen werden, hat die GC-Protokollierung keinen nennenswerten Overhead, daher sollte sie für alle wichtigen JVM-Prozesse immer aktiviert sein.
Einschalten der GC-Protokollierung
Als Erstes musst du einige Schalter beim Start der Anwendung hinzufügen. Man kann sie sich am besten als "obligatorische GC-Logging-Flags" vorstellen, die bei jeder Java/JVM-Anwendung (außer vielleicht bei Desktop-Anwendungen) aktiviert sein sollten. Die Flags sind:
-Xloggc:gc.log -XX:+PrintGCDetails -XX:+PrintTenuringDistribution -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps ...
Get Java optimieren now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.