首页 > 技术文章 > 日志

javaXRG 2020-04-30 23:45 原文

1、什么是日志

能够描述系统运行状态的所有时间都可以算作日志,如用户下线、接口超时、数据库崩溃

2、日志框架

一套能够实现日志输出的工具包

3、System.out为什么不能来做日志输出

只能输入到控制台,不够灵活

4、日志功能

定制输出目标(数据库、文件)、定制输出格式、携带上下文信息、运行时选择性输出、灵活的配置、优异的性能

5、常见日志框架

日志门面:JCL、jboss-logging、SLF4j

日志实现:JUL、Log4j、Log4j2、Logback

最佳组合:SLF4J+Logback

6、springboot日志配置有两种方式

application.yml配置或者logback-spring.xml配置(此方法更灵活,可进行复杂配置,实际生产中用此方法配置)

================================================================================================================

application.yml配置

引入依赖有(spring-boot不加此依赖也可以):

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.6</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.1.6</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-access</artifactId>
<version>1.1.6</version>
</dependency>

application.yml中写入如下配置信息:
指定log格式,log文件路径
logging:
pattern:
console: "%d - %msg%n"
#path: log/log #指定log路径,默认文件名为spring.log
file: log/sell.log #指定log文件名
level:
com.imooc.LoggerTest: debug #指定某个类的日志级别

踩坑:配置文件application.yml重新命名,但没有指定配置文件的名字,导致读不出配置信息,通过修改如下信息来改变配置文件。如自定义配置文件名为myconfig.yml,
则将Environment variables改为如下

 

 

7、spring配置文件(引自https://www.cnblogs.com/liduchang/p/12062066.html

在SpringBoot项目中的配置文件的格式有两种properties和yml,文件的位置如下(优先级由高到低,这里解释一下优先级的意思就是,在项目加载jvm的时候会优先加载哪个位置的配置文件):

  • 当前项目根目录下的 config 目录下
  • 当前项目的根目录下
  • resources 目录下的 config 目录下
  • resources 目录下
  •  

     =======================================================================================================================

  • 另外除了SpringBoot给我们默认配的配置文件的位置,
  •  

     

    我们也可以自己指定配置文件的位置。如图所示,即为在项目的resources目录下创建一个myconfig目录,然后把application.properties文件放在这个目录下

 

推荐阅读