Problem

Die Festplattenauslastung ist abnormal und nimmt schnell zu auf einem AEM-Server.

Ursache

Viele Dinge können zu einer ungewöhnlichen Erhöhung der Festplattenauslastung führen.  Einige mögliche Ursachen:

  1. Auf dem System wurde keine ordnungsgemäße Wartung durchgeführt.  In diesem Artikel finden Sie Einzelheiten zu verschiedenen Systemwartungsaktivitäten.
  2. AEM oder die Anwendung erstellt sehr viele Knoten oder Aktualisierungen von Knoteneigenschaften.  Dies könnte auf eine Fehlkonfiguration oder einen Fehler im Anwendungscode zurückzuführen sein.  Da der TAR-Speicher in Oak in einem Nur-Anlagenmodus arbeitet, trägt ein wiederholtes Speichern von Knoten weiter zu einem übermäßigen Repository-Wachstum bei.
  3. Sehr große Datei(en) wurden in AEM-Assets oder -Paketmanager hochgeladen.
  4. Die Debug oder Spurenprotokollierung blieb aktiviert.

Analyse/Auflösung

A. Wenn AEM ausgeführt wird und genügend Speicherplatz vorhanden ist.

1. Konfigurieren Sie die Oak-Schreib-Trace-Protokollierung.

Wenn AEM noch läuft, dann können wir es einem Debug-Logger ermöglichen, uns mitzuteilen, in welche Repository-Pfade geschrieben wird.  Installieren Sie das angehängte Protokollkonfigurationspaket unten oder folgen Sie diesen Schritten, um diesen Logger zu aktivieren:
  1. Gehen Sie zu http://aemhost:port/system/console/slinglog.
  2. Klicken Sie auf Neuen Logger hinzufügen.
  3. Konfigurieren Sie einen Logger: Protokolldatei: logs/repgrowth.log, Protokolllevel: trace, Loggers: org.apache.jackrabbit.oak.jcr.operations.writes

Herunterladen

Vorsicht:

  • Das Protokoll enthält Informationen zu allen Schreibvorgängen und Sitzungsdetails.  Wenn Sie diesen Logger verwenden, stellen Sie sicher, dass Sie über ausreichend Speicherplatz verfügen.
  • Deinstallieren Sie das Protokollkonfigurationspaket oder entfernen Sie die Protokollkonfiguration nach einer kurzen Zeit, in der dieses aktiviert ist, um weiteren Speicherplatzverbrauch zu vermeiden.

2. Führen Sie den Festplattenverwendungsbericht aus.

Sie können sich den Festplattenverwendungsbericht http://host:port/etc/reports/diskusage.html auch zunutze machen. Dieser Bericht zeigt den vom Repository-Pfad belegten Speicherplatz an.  Der Bericht ist bohrbar, sodass Sie auch Teilbäume anzeigen können.

3. Erfassen Sie die Thread-Sicherheitskopien und führen Sie ein Profiling durch.

Nachdem Sie mit repgrowth.log eine Vorstellung davon erhalten haben, welche Daten geschrieben werden, können wir Informationen über den Code erhalten, der diese Daten schreibt, indem Sie Thread-Sicherheitskopien erfassen und CPU-Profiling ausführen.

Lesen Sie die folgenden Artikel:

B. Wenn AEM beendet wird und/oder der Festplattenspeicher fast leer ist.

Wenn Sie AEM anhalten mussten, um ein Speicherplatz-Wachstum zu vermeiden, verwenden Sie die folgenden Befehle, um eine erste Analyse durchzuführen.

Verwenden Sie auf der Linux-Plattform den Befehl du, um alle Verzeichnisse unter crx-quickstart aufzulisten, mit der zusammengefassten Größe dieser Verzeichnisse:

du -h --max-depth=2 crx-quickstart

Verwenden Sie die Befehle Finden und du, um kürzlich geänderte Dateien zu finden und ihre Größe zu erhalten:

find crx-quickstart -type f -mtime 1 -exec du -hs {} \; -print

Um große Dateien im Datastore zu finden, können Sie die Befehle Finden, du und Datei kombinieren, um Dateien über 100 MB im Datastore-Verzeichnis zu finden und um automatisch ihren Dateityp zu identifizieren:

find crx-quickstart/repository/datastore -type f -size +100M -exec sh -c "du -hs \"{}\"; file \"{}\"" \;

Wenn Sie feststellen, dass das Wachstum im Segmentstore-Verzeichnis auftritt, kann der folgende Befehl helfen, einige Hinweise darauf zu geben, welche Daten geschrieben werden:

strings data_xxxxxx.tar | egrep '^.?/' | sed 's/.$//;s/^.\//\//'

Gilt für

AEM 6.x/Oak.

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie