catalina.outログは、rotatelogsやcronologのようなログローテーションプログラムを使用して、ローテーションさせることができます。
通常、標準出力と標準エラー出力はcatalina.outに出力されますが、ファイルではなくログローテーションプログラムにパイプします。ここでは、cronologでこれを行う方法を例示します。他のプログラムを使用する場合もだいたい同じですが、コマンドが一部違うことになります。
※注意:この場合、logging.propertiesやlog4j.propertiesファイルによって制御することはできません。
$CATALINA_HOME/bin/catalina.shを開いてから、次の行を検索し、それをコメントアウトします。
touch "$CATALINA_BASE"/logs/catalina.out
※Tomcatのバージョンによっては、以下のように記載されています:
touch "$CATALINA_OUT"
さらに、次の行を検索して、
>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
次の行で置換します。
2>&1 |/usr/bin/cronolog "$CATALINA_BASE/logs/catalina-%Y-%m-%d.out" &
※バージョンによっては、以下のように記載されています。
>> "$CATALINA_OUT" 2>&1 &
完了したら、bin/catalina.shを保存して、Tomcatを再起動します。
これで、ログディレクトリに"catalina-2014-12-13.out"というような名前のファイルが出力されるはずです。日付が変わると、新しいログファイル("catalina-2014-12-14.out")が作成されます。ログファイルは、日付が変更された後に何かがログに書き込まれて、初めてローテーションします。