back to all blogsすべてのブログ投稿を表示

25.0.0.7におけるログ設定のmaxFilesパラメータの適用範囲の拡張

image of author image of author
Navaneeth S Nair and 緑川 諒 (翻訳) 2025年7月15日
他言語版へのリンク: English ,

25.0.0.7におけるリリースでは、Open Libertyのアクセスログ設定におけるmaxFilesパラメータが強化されました。この変更により、ログファイルのクリーンアップが改善され、出力ディレクトリ内のすべての該当するログファイルが、現在のプロセスによって生成されたものだけでなく、考慮されるようになりました。

25.0.0.7で修正されたバグの一覧をご確認ください。

過去のOpen Liberty GAリリースのブログ投稿をご覧ください。

25.0.0.7を使用してアプリを開発・実行する

Mavenを使用している場合は、`pom.xml`ファイルに以下の内容を含めます。

<plugin>
    <groupId>io.openliberty.tools</groupId>
    <artifactId>liberty-maven-plugin</artifactId>
    <version>3.11.4</version>
</plugin>

Gradleを使用している場合は、 build.gradle ファイルに以下の内容を含めます。

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'io.openliberty.tools:liberty-gradle-plugin:3.9.4'
    }
}
apply plugin: 'liberty'

コンテナ・イメージを使用している場合は以下です。

FROM icr.io/appcafe/open-liberty

または、ダウンロード・ページをご覧ください。

IntelliJ IDEAVisual Studio CodeまたはEclipse IDEを使用している場合は、オープンソースの Liberty開発者ツールを活用して、IDE 内で効果的な開発、テスト、デバッグ、およびアプリケーション管理を行うことができます。

Stack Overflowで質問する

Open Libertyにおけるログ管理の強化:アクセスログのmaxFilesパラメータの適用範囲の拡張

Open Libertyの堅牢なロギングシステムは、開発者や管理者がアプリケーションの実行時の挙動を把握するのに役立ちます。25.0.0.7におけるリリースでは、Open Libertyのアクセスログ設定における maxFiles パラメータが強化されました。この変更により、ログファイルのクリーンアップが改善され、出力ディレクトリ内のすべての該当するログファイルが、現在のプロセスによって生成されたものだけでなく、考慮されるようになりました。Open Libertyのアクセスログは、すべての受信HTTPリクエストを記録し、アクセスログファイルに保存します。アクセスログの各種パラメータは server.xml 構成ファイルで設定できます。その1つが maxFiles で、サーバーが保持するローテーション済みアクセスログファイルの数を制御します。

従来の動作では、Open Libertyのクリーンアップ機構は現在のサーバー・プロセス実行中に作成されたアクセスログファイルのみを追跡・削除していました。そのため、以前のサーバー・プロセス実行時に生成された古いログファイルはディレクトリ内に残っていました。

この課題に対応するため、maxFiles パラメータの適用範囲が拡張されました。主な変更点は、サーバーがログ出力ディレクトリ内の設定されたファイル名パターンに一致するすべてのログファイルを、どのプロセスで作成されたかに関係なく考慮し、合計が maxFiles を超えた場合は最も古いものから削除するようになったことです。

利点:

  • クリーンアップの強化: ログディレクトリが整理され、想定した上限内に保たれます。

  • プロセスをまたいだ対応: 過去の実行で生成されたログも管理対象となります。

  • 一貫性: デプロイをまたいでも予測可能で信頼性の高いログ保持動作を実現します。

maxFiles パラメータを使ったアクセスログの有効化方法は以下の通りです。

<httpEndpoint id="defaultHttpEndpoint" httpPort="9080" httpsPort="9443">
    <accessLogging filepath="${server.output.dir}/logs/http_versionEndpoint_access.log"
                   maxFiles="5" rolloverInterval="1m" />
</httpEndpoint>

この設定により、以下の動作が行われます。

  • アクセスログは ${server.output.dir}/logs ディレクトリに保存されます。

  • ローテーションされたアクセスログファイルは最新の5件のみ保持されます。

  • ファイル数が5件を超えると、新しいファイル作成時に最も古いファイルが自動的に削除されます。

今すぐOpen Liberty 25.0.0.7を入手