【iDempiere Lab】一定期間を過ぎたログファイルを自動削除する

一定期間を経過したiDempiereのログファイルを自動的に削除する方法について調査及び兼用し、その成果をまとめています。

iDempiereのログファイルについて

iDempiereのログファイルは、インストールパッケージの直下にある"log"フォルダ(デイレクトリ)に作成されます。

ログファイル
ログファイル

ログファイルを削除したい場合には、サーバーモニターから"Delete all Trace Logs"をクリックすると、現在書き込み対象となっているログファイルを除いてログファイルは削除されます。

保持期間を過ぎたログファイルの定期自動削除について

ログファイルは、一定時間保持したら、自動的に削除したいと多くの方が考えるかなと思います。iDempiereコミュニティーとしては、そのようなことを行いたい場合、これまではOSの機能を使用して行うことを想定していました。※iDempiereコミュニティーのリーダーの一人のカルロスさんは、Ubuntuのtmpreaperを使用しているそうです。

そしてver11からは、もう一つのオプションとして、iDempiereのプロセスで実行できるようになりました。

手動実行の場合、メニュー「ログファイルの削除(Delete Trace Logs)」から実行することができます。

スケジューラーには非アクティブの状態で登録されていますので、アクティブにすれば定期的にログファイルを自動削除できます。

スケジューラー
スケジューラー

初期設定では、自動実行は1日1回で、ログの保持期間は7日間になっていますので、必要に応じて変更して下さい。

参考サイト

技術情報

Javaのクラス

  • org.idempiere.process.DeleteTraceLogs