Symptome

Mit einer Standardkonfiguration von FileJournal, abhängig von der Aktivität im Repository, werden im Laufe der Zeit viele Journal-Log-Dateien erstellt. Dies kann eventuell zu einem Speicherplatzproblem und Performance-Problemen in Anwendungen führen, die CRX verwenden.

Ursache

Die Standardkonfiguration des Journals erlaubt theoretisch eine unbegrenzte Anzahl von Rotationslogfiles.

Lösung

Je nach Setup unterscheidet sich die Konfiguration geringfügig und befindet sich in der Datei repository.xml. Details zu den einzelnen Konfigurationsparametern entnehmen Sie bitte dem Abschnitt Journal Konfiguration.
 
 HINWEIS: Bitte sichern Sie die Instanz, bevor Sie Änderungen vornehmen!

CQ / CRX-Version Standort
5.2.x / 1.4.2 crx-quickstart/server/runtime/0/_crx/WEB-INF/repository.xml
5.3 / 2.0 crx-quickstart/repository/repository.xml
5.5 / 2.3 crx-quickstart/repository/repository.xml

Zusätzlich zur Neukonfiguration des FileJournals muss das bestehende Journal bereinigt werden. Bitte beachten Sie: Als Voraussetzung für geclusterte CRX-Umgebungen wird dringend empfohlen, alle Cluster-Knoten vollständig auf die gleiche Revision wie den Master synchronisieren zu lassen, bevor Sie folgende Änderungen vornehmen:

  1. (alle) CRX-Instanzen stoppen
  2. Wenn Sie einen Multi-Knoten-Cluster betreiben, vergewissern Sie sich, dass alle Knoten über die aktuellen Revision verfügen.
    1. Überprüfen Sie für jeden Clusterknoten, ob die Revisionsnummer in crx-quickstart/repository/revision.log mit crx-quickstart/repository/shared/journal/revision übereinstimmt.
    2. Die Revisionsnummern werden binär gespeichert, so dass man sie unter Linux mit dem Befehl diff vergleichen kann. Unter Windows können Sie ein binärfähiges Diff-Tool wie WinMerge verwenden
  3. ALLE Dateien unter crx-quickstart/repository/shared/journal löschen
  4. crx-quickstart/repository/revision.log löschen
  5. Journal-Rekonfiguration ausführen
  6. Starten Sie (alle) CRX-Instanzen.

 

Nicht geclusterte Umgebung

In einer nicht geclusterten Umgebung, in der CRX eigenständig ausgeführt wird, wird empfohlen, die maximale Größe einer Journal-Logdatei auf 100 MB zu begrenzen und die Anzahl der zulässigen Dateien auf 1 zu beschränken. Dies ist mehr als ausreichend für eine solche Einrichtung.

<Journal class="com.day.crx.core.journal.FileJournal"> <param name="sharedPath" value="${rep.home}/shared"/> <param name="maximumSize" value="104857600" /> <param name="maximumFiles" value="1" /> </Journal> 

 

Geclusterte Umgebung.

Wenn CRX in einem Cluster mit anderen CRX-Instanzen ausgeführt wird, empfiehlt es sich, die Anzahl der gedrehten Journal-Logdateien anzupassen. Das Journal verfolgt im Prinzip jede Speicheroperation des Repository, also können abhängig davon, wie lange ein Slave-Clusterknoten offline sein kann, bevor er die neueste Version der Master-Clusterknoteninstanz einholen kann, die folgenden 2 Parameter konfiguriert werden um den Anforderungen zu entsprechen:

  • maximumAge: maximales Alter einer Journal-Logdatei, bevor sie entfernt wird.
  • maximumFiles: maximale Anzahl erlaubter Log-Rotationen.

 

<Journal class="com.day.crx.core.journal.FileJournal"> <param name="sharedPath" value="${rep.home}/shared"/> <param name="maximumSize" value="104857600" /> <param name="maximumAge" value="P1M" /> <param name="maximumFiles" value="10" /> </Journal> 
Drehen Sie das TAR-Journal im Nicht-Geteilten-Clustering.
Ab CRX 2.2 wird ein neues TarJournal verwendet, welches eine Aufzeichnung mithilfe des erweiterten TarPM-Dateiformats und des Cluster-Synchronisationsprotokolls implementiert und im Nicht-Geteilten-Modus arbeitet.  Der Standardwert für die maximale Dateigröße ist 256 MB. Während dieser Standardwert in den meisten Fällen in Ordnung ist. Der maximale Wert beträgt 1 GB. Für weitere Details zu anderen Parametern hier klicken. Die Änderungen werden beim nächsten Lauf der Tar-Optimierung berücksichtigt.  Ein Beispiel für eine Rotation, die alle 24 Stunden stattfindet, ist unten dargestellt
<Journal class="com.day.crx.persistence.tar.TarJournal">     <param name="maxFileSize" value="256"/>     <param name="maximumAge" value="PT24H"/> </Journal> 

Gilt für

CRX1.4.2, CRX2.0, CRX2.2, CRX2.3

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