使用 Log4j2 记录项目信息

JavaScriptJavaScriptBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个项目中,你将学习如何将 Log4j2 日志框架集成到 Spring Boot 应用程序中。你将配置 Log4j2 以便在控制台和日志文件中记录项目信息。

👀 预览

Log4j2 配置预览
Log4j2 配置示例

🎯 任务

在这个项目中,你将学习:

  • 如何修改 pom.xml 文件以添加必要的 Log4j2 依赖项
  • 如何在 application.properties 文件中配置 Log4j2
  • 如何在 DemoApplication.java 文件中创建一个日志记录器并使用不同的日志级别记录信息
  • 如何打包并运行 Spring Boot 应用程序以查看记录的信息

🏆 成果

完成这个项目后,你将能够:

  • 在 Spring Boot 应用程序中使用 Log4j2 日志框架
  • 配置 Log4j2 以便在控制台和日志文件中记录信息
  • 创建一个日志记录器并使用不同的日志级别记录信息
  • 打包并运行一个 Spring Boot 应用程序

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("`JavaScript`")) -.-> javascript/BasicConceptsGroup(["`Basic Concepts`"]) javascript(("`JavaScript`")) -.-> javascript/AdvancedConceptsGroup(["`Advanced Concepts`"]) javascript(("`JavaScript`")) -.-> javascript/ToolsandEnvironmentGroup(["`Tools and Environment`"]) javascript(("`JavaScript`")) -.-> javascript/NetworkingGroup(["`Networking`"]) javascript(("`JavaScript`")) -.-> javascript/SecurityGroup(["`Security`"]) javascript/BasicConceptsGroup -.-> javascript/variables("`Variables`") javascript/BasicConceptsGroup -.-> javascript/functions("`Functions`") javascript/AdvancedConceptsGroup -.-> javascript/error_handle("`Error Handling`") javascript/ToolsandEnvironmentGroup -.-> javascript/debugging("`Debugging`") javascript/ToolsandEnvironmentGroup -.-> javascript/version_control("`Version Control`") javascript/NetworkingGroup -.-> javascript/http_req("`HTTP Requests`") javascript/SecurityGroup -.-> javascript/web_sec("`Web Security Basics`") subgraph Lab Skills javascript/variables -.-> lab-300380{{"`使用 Log4j2 记录项目信息`"}} javascript/functions -.-> lab-300380{{"`使用 Log4j2 记录项目信息`"}} javascript/error_handle -.-> lab-300380{{"`使用 Log4j2 记录项目信息`"}} javascript/debugging -.-> lab-300380{{"`使用 Log4j2 记录项目信息`"}} javascript/version_control -.-> lab-300380{{"`使用 Log4j2 记录项目信息`"}} javascript/http_req -.-> lab-300380{{"`使用 Log4j2 记录项目信息`"}} javascript/web_sec -.-> lab-300380{{"`使用 Log4j2 记录项目信息`"}} end

修改 pom.xml 文件

在这一步中,你将学习如何修改 pom.xml 文件,以便将 Log4j2 日志框架集成到 Spring Boot 项目中。

  1. springbootlog4j2 项目中打开 pom.xml 文件。

  2. <dependencies> 部分添加 spring-boot-starter-log4j2 依赖项:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
  1. 为了排除默认的 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 日志框架。

  1. 打开 /src/main/resources/ 目录下的 application.properties 文件。

  2. 在文件中添加以下行:

logging.config=classpath:log4j2.xml

此行告知 Spring Boot 应用程序使用位于类路径中的 log4j2.xml 配置文件。

修改 DemoApplication.java 文件

在这一步中,你将学习如何在 DemoApplication.java 文件中创建一个日志记录器,并使用不同的日志级别记录信息。

  1. 打开 /src/main/java/org/labex/springbootlog4j2/ 目录下的 DemoApplication.java 文件。

  2. 使用以下代码创建一个日志记录器对象:

private static final Logger logger = LoggerFactory.getLogger(DemoApplication.class);
  1. 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");
  1. 请注意,我们需要导入相关的类:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

这些日志语句将使用相应的日志级别记录信息。

打包并运行应用程序

在这一步中,你将学习如何打包 Spring Boot 应用程序并运行它。

  1. 打开一个终端,导航到 springbootlog4j2 项目目录。

  2. 运行以下命令来打包应用程序:

cd springbootlog4j2
mvn clean package

这将在 target 目录中生成一个 JAR 文件。

Spring Boot 打包命令
  1. 使用以下命令运行应用程序:
mvn spring-boot:run

启动服务后,先点击环境上方的 Web 8080,你可以看到以下运行效果,然后返回控制台查看记录的信息。

Spring Boot 应用程序运行
  1. 要查看日志文件,导航到项目中的 logs 目录。你应该会看到由 Log4j2 配置创建的日志文件。
日志文件目录视图

恭喜!你已成功将 Log4j2 日志框架集成到 Spring Boot 项目中,并将其配置为在控制台和日志文件中记录信息。

✨ 查看解决方案并练习

总结

恭喜!你已完成此项目。你可以在 LabEx 中练习更多实验以提升技能。

您可能感兴趣的其他 JavaScript 教程