Untersuchen des Protokollwachstums und von Synchronisierungsfehlern in der TarMK-Cold-Standby-Instanz von AEM
In diesem Artikel wird erläutert, wie sich das schnelle Anwachsen der Datei „tarmk-coldstandby.log“ und Synchronisierungsfehler in TarMK-Cold-Standby-Umgebungen in Adobe Experience Manager (AEM) beheben lassen, die normalerweise durch übermäßige DEBUG-Protokollierung und tiefe rekursive Verarbeitung verursacht werden.
Beschreibung description
Umgebung
Adobe Experience Manager 6.5 oder AEM 6.5 LTS, die mit TarMK-Cold-Standby konfiguriert sind. Überprüfen Sie die entsprechende Version, bevor Sie diese Schritte ausführen.
Problem/Symptome
- Die
tarmk-coldstandby.logder Standby-Instanz wächst schnell. - Der Speicherplatz auf der Standby-Instanz wird knapp oder erschöpft.
- Die Synchronisierung von Cold-Standby schlägt fehl oder wird nicht mehr aktualisiert.
- Die Protokolle enthalten bei der Synchronisierung wiederholte
StackOverflowError.
Ursache
Im dokumentierten Fehlermuster zeichnet die DEBUG-Protokollierung ein hohes Volumen an Segmentsynchronisierungsaktivitäten auf. Derselbe Vorfall umfasste wiederkehrende StackOverflowError während der rekursiven Verarbeitung von Segmentverweisen. Bestätigen Sie sowohl die Protokollierungsebene als auch die Fehlernachweise, bevor Sie eine Fehlerbehebung anwenden. Diese Symptome allein stellen nicht fest, dass jeder Synchronisierungsfehler dieselbe Ursache hat.
Lösung resolution
Gehen Sie wie folgt vor, um das Problem zu beheben:
- Erhöhen Sie die Größe des JVM-Thread-Stacks auf der Standby-Instanz, indem Sie die Option JVM
-Xssauf einen größeren Wert anpassen, z. B.2m. Dies hilft,StackOverflowErrorwährend der tiefen rekursiven Verarbeitung zu verhindern. - Überprüfen Sie die Protokollierungskonfiguration für Cold-Standby-Komponenten und legen Sie die Protokollebene für
org.apache.jackrabbit.oak.segment.standby.clientund zugehörige Klassen während des normalen Betriebs aufINFOfest. - Aktivieren Sie die
DEBUG-Protokollierung nur, wenn eine detaillierte Fehlerbehebung erforderlich ist, da eine übermäßigeDEBUG-Protokollierung die Hauptursache für das Wachstum der Protokolldateien ist. - Verwenden Sie zum Ändern der Protokollebenen Systemkonsole
>Sling Log Support und aktualisieren Sie die Konfiguration für die betroffenen Logger. - Wenn die Synchronisierungsprobleme weiterhin bestehen, müssen Sie die Standby-Instanz von einer einwandfreien primären Instanz neu erstellen, um alle kumulierten Inkonsistenzen zu beseitigen.
- Überwachen Sie die Festplattenauslastung und das Protokolldateiwachstum auf Standby-Knoten, um anormale Wachstumsmuster frühzeitig zu erkennen.
- Überwachen Sie die Cold-Standby-Synchronisierung, indem Sie die verfügbaren Metriken in der AEM OSGi-Web-Konsole überprüfen, einschließlich des Standby-Synchronisierungsstatus und der letzten erfolgreichen Synchronisierungszeit.
- Stellen Sie sicher, dass das Wachstum der Protokolldateien kontrolliert wird, die Cold-Standby-Synchronisierung erfolgreich abgeschlossen wurde und keine weiteren
StackOverflowErrormehr gemeldet werden.