准备一个SpringBoot空的项目

pom.xml

  1. <dependencies>
  2. <dependency>
  3. <groupId>org.springframework.boot</groupId>
  4. <artifactId>spring-boot-starter-web</artifactId>
  5. </dependency>
  6. <dependency>
  7. <groupId>org.springframework.boot</groupId>
  8. <artifactId>spring-boot-starter-test</artifactId>
  9. <scope>test</scope>
  10. <exclusions>
  11. <exclusion>
  12. <groupId>org.junit.vintage</groupId>
  13. <artifactId>junit-vintage-engine</artifactId>
  14. </exclusion>
  15. </exclusions>
  16. </dependency>
  17. <dependency>
  18. <groupId>org.projectlombok</groupId>
  19. <artifactId>lombok</artifactId>
  20. </dependency>
  21. </dependencies>

logback.xml

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <configuration scan="true">
  3. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  4. <encoder>
  5. <pattern>%d{HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
  6. </pattern>
  7. </encoder>
  8. </appender>
  9. <!-- 将日志写入日志文件 -->
  10. <appender name="FILE" class="ch.qos.logback.core.FileAppender">
  11. <!-- 写到自己项目的 logs.test.log-->
  12. <!-- <file>${catalina.base}/logs/test.log</file>-->
  13. <file>../logs/test.log</file>
  14. <append>true</append><!-- 日志追加 -->
  15. <encoder>
  16. <pattern>%d{HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
  17. </pattern>
  18. </encoder>
  19. </appender>
  20. <!-- 将日志写入数据库 -->
  21. <!-- <appender name="DB-CLASSIC-MYSQL-POOL" class="ch.qos.logback.classic.db.DBAppender">-->
  22. <!-- <connectionSource class="ch.qos.logback.core.db.DataSourceConnectionSource">-->
  23. <!-- <dataSource class="com.alibaba.druid.pool.DruidDataSource">-->
  24. <!-- <driverClassName>com.mysql.jdbc.Driver</driverClassName>-->
  25. <!-- <url>jdbc:mysql://localhost:3306/log</url>-->
  26. <!-- <username>sa</username>-->
  27. <!-- <password>123456</password>-->
  28. <!-- </dataSource>-->
  29. <!-- </connectionSource>-->
  30. <!-- </appender>-->
  31. <root level="INFO">
  32. <appender-ref ref="STDOUT"/>
  33. <appender-ref ref="FILE"/>
  34. <!-- <appender-ref ref="DB-CLASSIC-MYSQL-POOL" />-->
  35. </root>
  36. </configuration>

启动类

  1. package com;
  2. import org.slf4j.Logger;
  3. import org.slf4j.LoggerFactory;
  4. import org.springframework.boot.SpringApplication;
  5. import org.springframework.boot.autoconfigure.SpringBootApplication;
  6. import org.springframework.web.bind.annotation.GetMapping;
  7. import org.springframework.web.bind.annotation.RequestMapping;
  8. import org.springframework.web.bind.annotation.RestController;
  9. import java.util.logging.LoggingPermission;
  10. @RestController
  11. @SpringBootApplication
  12. @RequestMapping
  13. public class DemoApplication {
  14. Logger logger = LoggerFactory.getLogger(getClass());
  15. public static void main(String[] args) {
  16. SpringApplication.run(DemoApplication.class, args);
  17. }
  18. /**
  19. * @功能描述: 浏览器访问 http://localhost:8080/index
  20. * 张俊杰 2020年10月23日 14:30
  21. * 日志文件会输出到当前项目平级的logs目录下面的test.log
  22. */
  23. @GetMapping("/index")
  24. public String c_() {
  25. logger.info("你好,我是张俊杰");
  26. logger.info("hello!");
  27. return "你好";
  28. }
  29. }

启动并测试

访问接口
get请求
http://localhost:8080/index

可以看到项目的同级目录下面出现了一个logs\test.log

打开logs 文件夹的test.log文件就能看到日志信息了

放到Linux启动

打成jar包之后名字是 demo.jar
放到soft文件夹下启动这个jar包

  1. nohup java -jar demo.jar >test.log 2>&1 &

此时 soft 文件夹下会生成一个test.log文件
SpringBoot项目启动和运行的的日志信息就会记录在test.log文件里面了.