oak-run を使用してデータストアの整合性チェックを実行する方法
Adobe Experience Managerで oak-run を使用してデータストアの整合性チェックを実行する方法を説明します。
説明 description
環境
Adobe Experience Manager(AEM)
問題
データストアの整合性チェックは、欠落しているもののまだ参照されているデータストアのバイナリを報告するものです。整合性チェックは、Felix コンソールで直接トリガーできます。
次の場所からトリガーされます: MarkSweepGarbageCollector#checkConsistency Mbean
.
次の場合、 BlobGC MBeans
が MBeanServer
次のように設定します。 mbean
また、次の場合にも使用できます。
BlobGCMbean#checkConsistency
整合性チェックが完了すると、メッセージに欠落として報告されるバイナリの数が表示されます。数値が次の値より大きい場合 0(ゼロ) で、次のように設定されたログを確認します。 org.apache.jackrabbit.oak.plugins.blob .MarkSweepGarbageCollector
を参照してください。
不足しているバイナリがログにどのように報告されるかの例を次に示します。
11:32:39.673 INFO [ main] MarkSweepGarbageCollector.java:600 Consistency check found 1 missing blobs 11:32:39.673 WARN [ main] MarkSweepGarbageCollector.java:602 Consistency check failure in the the blob store : DataStore backed BlobStore [ org.apache.jackrabbit.oak.plugins.blob.datastore.OakFileDataStore] , check missing candidates in file /tmp/gcworkdir-1467352959243/gccand-1467352959243
とは異なり、 /system/console/repositorycheck
UI、oak-run ツールは、の下にある非表示の lucene インデックスファイルをチェックします。 /oak: index
残りのコンテンツパスに加えて、を追加します。 datastorecheck
~の命令 oak-run を使用して、データストアで整合性チェックを実行できます。 コマンドの実行方法に関する詳細な手順を次に示します。
解決策 resolution
-
oak-run jar 1.8.8 以降のバージョンをAEMサーバーにダウンロードします。
-
oak run jar を同じディレクトリに配置します。
crx-quickstart
が配置されている場合は、oak-run-*.jar
の実行時に、次のコマンドを実行します。 -
次のコマンドを実行します(環境に従って、segmentstore と datastore のパスを更新します)。
code language-none java -jar oak-run-*.jar datastorecheck --consistency --ref --id --fds crx-quickstart/install/org.apache.jackrabbit.oak.plugins.blob.datastore.FileDataStore.config --repoHome crx-quickstart/repository --store crx-quickstart/repository/segmentstore --dump temp --verbose --track
-
このコマンドを実行すると、データストアの整合性チェックの結果が出力されます。
また、DataStore 用整合性チェック機能は、ノードストア内のすべての blob 参照とデータストアで使用可能なすべての blob ID をリストするためにも使用できます。次のコマンドを使用します。
$ java-jar oak-run-*.jar datastorecheck [ --id] [ --ref] [ --consistency] \
[ --store |] \
[ --s3ds |--fds] \
[ --dump] \
[ --track]
次のオプションを 1 つ以上指定します。
—id — データストア内のすべての id をリストします。
—ref — ノードストア内のすべての blob 参照をリストします。
—consistency — 整合性チェックを実行して、見つからない BLOB をすべてリストします。
次のオプションがあります。
—store - mongo uri のセグメントストアのパス(上記の —ref および —consistency オプションで必須)。
—dump — ファイルのダンプ先のパス(オプション)。 指定しない場合、ファイルはユーザーの tmp ディレクトリにダンプされます。
—s3ds - S3DataStore 設定ファイルのパス。
—fds - FileDataStore 設定ファイルのパス(「path」プロパティは必須)。
—track — ローカルリポジトリのホームフォルダーのパス(オプション)。 ダウンロードされた blob ID のコピーが追跡対象になります。