はじめに
このプロジェクトでは、Log4j2 ロギングフレームワークを Spring Boot アプリケーションに統合する方法を学びます。コンソールとログファイルの両方にプロジェクト情報をログに記録するように Log4j2 を構成します。
👀 プレビュー


🎯 タスク
このプロジェクトで学ぶことは以下の通りです。
pom.xmlファイルを変更して必要な Log4j2 依存関係を追加する方法application.propertiesファイルで Log4j2 を構成する方法DemoApplication.javaファイルでロガーを作成し、異なるログレベルを使用して情報をログに記録する方法- Spring Boot アプリケーションをパッケージ化して実行し、ログに記録された情報を表示する方法
🏆 成果
このプロジェクトを完了すると、以下のことができるようになります。
- Spring Boot アプリケーションで Log4j2 ロギングフレームワークを使用する
- コンソールとログファイルに情報をログに記録するように Log4j2 を構成する
- ロガーを作成し、異なるログレベルを使用して情報をログに記録する
- Spring Boot アプリケーションをパッケージ化して実行する
pom.xml ファイルを変更する
この手順では、Log4j2 ロギングフレームワークを Spring Boot プロジェクトに統合するために、pom.xmlファイルをどのように変更するか学びます。
springbootlog4j2プロジェクトのpom.xmlファイルを開きます。<dependencies>セクションにspring-boot-starter-log4j2依存関係を追加します。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
- デフォルトの Logback 依存関係を除外するには、以下のコードを
<dependencies>セクションに追加します。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
これにより、プロジェクトではロギングフレームワークとして Log4j2 のみが使用されるようになります。
application.properties ファイルで Log4j2 を構成する
この手順では、application.propertiesファイルで Log4j2 ロギングフレームワークをどのように構成するか学びます。
/src/main/resources/ディレクトリ内のapplication.propertiesファイルを開きます。次の行をファイルに追加します。
logging.config=classpath:log4j2.xml
この行は、Spring Boot アプリケーションに対して、クラスパス内にある log4j2.xml 構成ファイルを使用するように指示します。
DemoApplication.java ファイルを変更する
この手順では、DemoApplication.javaファイルでロガーを作成し、異なるログレベルを使用して情報をログに記録する方法を学びます。
/src/main/java/org/labex/springbootlog4j2/ディレクトリ内のDemoApplication.javaファイルを開きます。以下のコードを使用してロガーオブジェクトを作成します。
private static final Logger logger = LoggerFactory.getLogger(DemoApplication.class);
sayhello()メソッドに、以下のログ文を追加します。
logger.error("This is an error message");
logger.warn("This is a warning message");
logger.info("This is an info message");
logger.debug("This is a debug message");
- 関連するクラスをインポートする必要があることに注意してください。
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
これらのログ文は、対応するログレベルを使用して情報をログに記録します。
アプリケーションをパッケージ化して実行する
この手順では、Spring Boot アプリケーションをパッケージ化して実行する方法を学びます。
ターミナルを開き、
springbootlog4j2プロジェクトディレクトリに移動します。アプリケーションをパッケージ化するには、次のコマンドを実行します。
cd springbootlog4j2
mvn clean package
これにより、target ディレクトリに JAR ファイルが生成されます。

- 次のコマンドを使用してアプリケーションを実行します。
mvn spring-boot:run
サービスを起動した後、まず環境の上の Web 8080 をクリックすると、以下の実行結果が表示され、その後コンソールに戻って記録された情報を確認できます。

- ログファイルを表示するには、プロジェクト内の
logsディレクトリに移動します。Log4j2 構成によって作成されたログファイルが表示されるはずです。

おめでとうございます!Log4j2 ロギングフレームワークを Spring Boot プロジェクトに正常に統合し、コンソールとログファイルに情報をログに記録するように構成しました。
まとめ
おめでとうございます!このプロジェクトを完了しました。実力を向上させるために、LabEx でさらに多くの実験を行ってみてください。



