Fessのクロール用メモリを変更するとき、jvm.crawler.optionsへ-Xms128m -Xmx512mのようにスペースで並べると、JVMが起動できない場合があります。この設定は改行で引数を分割するため、Java propertiesの継続行と改行文字を使って記述します。。
既定の全オプションを残して編集する
15.9開発版の既定値には-Xms128m、-Xmx512m、-XX:MaxMetaspaceSize=128mなどが含まれています。jvm.crawler.optionsを上書きすると、ヒープだけでなく他の全オプションも置き換わります。
fess_config.propertiesで既存のjvm.crawler.options全体を探し、ヒープの行だけを書き換えます。次の例は、その中の変更する2行だけの抜粋です。これだけで設定全体を置き換えないでください。
-Xms256m\n\
-Xmx1g\n\
\nは値の中の改行区切り、行末の\はpropertiesファイルで次の物理行へ続ける記号です。1行に1つのJVM引数を記述します。空白区切りだと全体が1引数になり、Invalid initial heap sizeなどのエラーでクロールが開始しません。
メモリ値は例であり、全環境に推奨するサイズではありません。コンテナやホストの上限を確認してください。またFess本体用のFESS_HEAP_SIZEと、別プロセスで動くクローラーの設定を混同しないようにします。
起動失敗を確認する
設定反映後にクロールジョブを実行し、クローラーの起動ログとジョブログで、JVMが起動して実際に処理が進むことを確認してください。古いスペース区切りの例や、必要な既定オプションを消していないかを点検します。
同じ文書修正では、HTTPアクセスの負荷制御・リクエスト制限の診断メッセージがINFOであることも補足されています。Fess本体の既定ログレベルwarnでは表示されないため、調査する場合はFESS_LOG_LEVEL=infoへ変更して再起動するか、対象LoggerをINFOへ設定します。クローラーの既定ジョブはINFOであり、本体と同じログ設定とは限りません。