logback配置

logback 常用配置详解(二) <appender>

我怕爱的太早我们不能终老 提交于 2020-02-17 05:19:56
转自: logback 常用配置详解(二) <appender> logback 常用配置详解(二) <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的组件。 <appender>有两个必要属性name和class。name指定appender名称,class指定appender的全限定名。 1.ConsoleAppender: 把日志添加到控制台,有以下子节点: <encoder>:对日志进行格式化。( 具体参数稍后讲解 ) <target>:字符串 System.out 或者 System.err ,默认 System.out ; 例如: Xml代码 < configuration > < appender name = "STDOUT" class = "ch.qos.logback.core.ConsoleAppender" > < encoder > < pattern > %-4relative [%thread] %-5level %logger{35} - %msg %n </ pattern > </ encoder > </ appender > < root level = "DEBUG" > < appender-ref ref = "STDOUT" /> </ root > </

logback使用filter过滤日志输出

眉间皱痕 提交于 2020-02-13 17:34:12
logback使用<filter>过滤日志输出 <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之一。返回DENY,日志将立即被抛弃不再经过其他过滤器;返回NEUTRAL,有序列表里的下个过滤器过接着处理日志;返回ACCEPT,日志会被立即处理,不再经过剩余过滤器。 过滤器被添加到 <Appender> 中,为 <Appender> 添加一个或多个过滤器后,可以用任意条件对日志进行过滤。 <Appender> 有多个过滤器时,按照配置顺序执行。 下面是几个常用的过滤器: LevelFilter: 级别过滤器,根据日志级别进行过滤。如果日志级别等于配置级别,过滤器会根据onMath 和 onMismatch接收或拒绝日志。有以下子节点: <level>:设置过滤级别 <onMatch>:用于配置符合过滤条件的操作 <onMismatch>:用于配置不符合过滤条件的操作 例如:将过滤器的日志级别配置为INFO,所有INFO级别的日志交给appender处理,非INFO级别的日志,被过滤掉。 Xml代码 <configuration> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <filter class="ch.qos.logback

springBoot进阶02

守給你的承諾、 提交于 2020-02-08 23:33:05
SpringBoot 进阶 02 1. 日志的使用 1.1 基本使用 /** * 获取日志记录器 */ Logger logger = LoggerFactory.getLogger(this.getClass()); @RequestMapping("/hello") @ResponseBody public String sayHello(){ //日志级别 trace<debug<info<warn<error logger.trace("trace...."); logger.debug("debug...."); logger.info("info...."); logger.warn("warn...."); logger.error("error..."); return "hello springBoot!"; } 基本使用 1.2 yml 修改日志级别 在 application.yml 中 ( 指定到修改的包 ) # 修改日志级别 ( 默认是 info) trace<debug<info<warn<error logging: level: cn: dyier: trace 1.3 指定配置文件配置 logback.xml <?xml version="1.0" encoding="UTF-8"?> <!-- scan:当此属性设置为true时

logback的使用

你说的曾经没有我的故事 提交于 2020-02-04 14:41:21
1 问题: 1 只有重新部署时才有日志文件生成; 2 第二天的文件会生成在前一天中; 2最终测试正常的logback配置,还是需要指定触发机制,何时生成日志,默认是部署时触发 <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--日志文件输出的文件名--> <FileNamePattern>${LOG_HOME}/web.log.%d{yyyy-MM-dd}.%i.log</FileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>1000MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> <!--日志文件保留天数--> <MaxHistory>10</MaxHistory> </rollingPolicy> <encoder class="ch.qos

SpringBoot整合Logback

左心房为你撑大大i 提交于 2020-02-04 02:35:59
简介 Logback是由log4j创始人设计的另一个开源日志组件,官方网站: http://logback.qos.ch。它当前分为下面下个模块: logback-core:其它两个模块的基础模块 logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logging logback-access:访问模块与Servlet容器集成提供通过Http来访问日志的功能 在 logback 里,最重要的三个类分别是: Logger:位于 logback-classic 模块中。Logger作为日志的记录器,把它关联到应用对应的context上后,主要用于存放日志对象,也可以定义日志类型、级别。 Appender: 位于 logback-core 中。Appender主要用于指定日志输出的目的地,目的地可以是控制台、文件、远程套接字服务器、 MySQL、PostreSQL、 Oracle和其他数据库、 JMS和远程UNIX Syslog守护进程等。 Layout: 位于 logback-core 中。Layout 负责把事件转换成字符串,格式化的日志信息的输出。 Logger 可以被分配级别。级别包括:TRACE、DEBUG、INFO、WARN 和 ERROR,定义在ch.qos

Java日志记录--log4j and logback

百般思念 提交于 2020-02-03 07:15:49
问题的引入: 把所有的信息打印在控制台上不行吗? 01. 控制台有行数限制; 02.System.out.println() 影响系统性能; 03. 如果我们需要对一些用户的行为习惯进行分析,我们找不到用户的数据! 程序中出现了问题怎么办? 01.debug 断点调试; ( 务必掌握 ) 02.System.out.println() 把信息打印在 console 控制台上(不会 debug ) 记录日志: 作用: 01. 记录代码中变量的变化情况,易于我们的代码调试和后期维护; 02. 周期性保存一些数据到文件中,以便于后续使用 ; 03. 可以设置日志信息的级别,便于管理。 组成部分: 01. 日志记录器 02. 日志的输出格式 03. 日志的输出目的地 七个输出级别: OFF 级别最高,用于关闭所有的日志记录 FATAL 严重的错误事件将会导致应用程序的退出 ERROR 错误事件,但仍然不影响系统的继续运行 WARN 会出现潜在错误的情形 INFO 消息在粗粒度级别上突出强调应用程序的运行过程 DEBUG 细粒度信息事件对调试应用程序非常有帮助 TRACE 细粒度比 DEBUG 更低的信息事件 ALL 级别最低,用于开启所有的日志记录 生产环境时,建议把 DEBUG 日志级别换成 WARN ,避免产生大量文件! 日志输出格式( Layout ) %p : 日志信息的优先级

SpringBoot整合logback

北慕城南 提交于 2020-01-30 08:00:13
SpringBoot整合logback 在类路径下新建 logback-spring.xml 配置文件,spring会自动扫描到该配置文件。 <?xml version="1.0" encoding="UTF-8" ?> <!-- 级别从高到低 OFF 、 FATAL 、 ERROR 、 WARN 、 INFO 、 DEBUG 、 TRACE 、 ALL --> <!-- 日志输出规则 根据当前ROOT 级别,日志输出时,级别高于root默认的级别时 会输出 --> <!-- 以下 每个配置的 filter 是过滤掉输出文件里面,会出现高级别文件,依然出现低级别的日志信息,通过filter 过滤只记录本级别的日志 --> <!-- scan 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。 --> <!-- scanPeriod 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 --> <!-- debug 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 --> < configuration scan = " true " scanPeriod = " 60 seconds " debug =

logback 常用配置详解(一) and

喜你入骨 提交于 2020-01-24 23:22:39
logback 配置详解(一) and 一 根节点包含的属性: scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。 scanPeriod: 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 debug: 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 例如: Xml代码 <configuration scan="true" scanPeriod="60 seconds" debug="false"> <!-- 其他配置省略--> </configuration> 二 根节点的子节点: 2.1设置上下文名称: <contextName> 每个logger都关联到logger上下文,默认上下文名称为“default”。但可以使用 <contextName> 设置成其他名字,用于区分不同应用程序的记录。一旦设置,不能修改。 Xml代码 <configuration scan="true" scanPeriod="60 seconds" debug="false"> <contextName>myAppName</contextName> <!-- 其他配置省略--> <

Spring Boot 日志配置

假装没事ソ 提交于 2020-01-23 21:44:35
Spring Boot支持 JavaUtil Logging、 Log4J、 Log4J2和 Logback作为日志框架,无论使用哪种日志框架, Spring Boot已为当前使用日志框架的控制台输出及文件输出做好了配置,默认情况下, Spring Boot使用 Logback作为日志框架。 配置 logback(官方推荐使用) 配置日志文件 spring boot 默认会加载 classpath:logback-spring.xml 或者 classpath:logback-spring.groovy。 如需要自定义文件名称,在 application.properties 中配置 logging.config 选项即可。 在 src/main/resources 下创建 logback-spring.xml 文件,内容如下: <?xml version="1.0" encoding="UTF-8"?> <configuration> <!-- 文件输出格式 --> <property name="PATTERN" value="%-12(%d{yyyy-MM-dd HH:mm:ss.SSS}) |-%-5level [%thread] %c [%L] -| %msg%n" /> <!-- test文件路径 --> <property name="TEST_FILE_PATH"

logback配置日志输出

a 夏天 提交于 2020-01-22 20:14:01
logback是spring boot的官方推荐日志。 1.在代码中使用logback日志: import org.slf4j.Logger; import org.slf4j.LoggerFactory; @RestController public class HelloController { private Logger logger = LoggerFactory.getLogger(getClass()); /** * hello world 第一个程序 * @return */ @RequestMapping("/hello") public String hello(){ logger.info("输出的信息是:{}", "Hello World") // {}是通配符,和log4j2里面的%s是一样的意思 return "Hello World!"; } } 2.logback.xml: <configuration> <!--控制台输出--> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <!--<layout>实现类的类型是 PatternLayout 时,class属性可以不用填写--> <encoder class="ch.qos.logback.classic