logback配置

logback的配置

假如想象 提交于 2020-03-26 11:17:17
log back 是log4j的豪华升级版,项目中一般使用Log Back 作日志打印 一、组件介绍 Logger : 日志记录器,在Logger上可以定义日志记录的级别,类型等! Appender : 日志追加器,只要定义日志输出的目的地,输出到控制台还是到文件还是到其他的进程等!        通常必须传入name(appender的名称,可以自定义),class(append的实现类,可以使用系统的实现类或用自己定义的实现类) Layout : 日志的样式!日志会参照layout的格式,进行格式化输出! 二、配置实例 在项目的resources 目录下创建logback.xml文件 <?xml version="1.0" encoding="UTF-8"?> <configuration debug="false"> <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径 --> <property name="LOG_HOME" value="/tmp/logs/" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder

LogBack简易教程

假装没事ソ 提交于 2020-03-23 00:33:15
1.简介   LogBack是一个日志框架,它与Log4j可以说是同出一源,都出自Ceki Gülcü之手。(log4j的原型是早前由Ceki Gülcü贡献给Apache基金会的) 1.1 LogBack,Slf4j,Log4j之间的关系   Slf4j是The Simple Logging Facade for Java的简称,是一个简单日志门面抽象框架,它本身只提供了日志Facade API和一个简单的日志类实现,一般常配合Log4j,LogBack,java.util.logging使用。Slf4j作为应用层的Log接入时, 程序可以根据实际应用场景动态调整底层的日志实现框架(Log4j/LogBack/JdkLog...);   LogBack和Log4j都是开源日记工具库,LogBack是Log4j的改良版本,比Log4j拥有更多的特性,同时也带来很大性能提升。详细数据可参照下面地址: Reasons to prefer logback over log4j   LogBack官方建议配合Slf4j使用,这样可以灵活地替换底层日志框架。   (note: 为了优化log4j,以及更大性能的提升,Apache基金会已经着手开发了log4j 2.0, 其中也借鉴和吸收了logback的一些先进特性,目前log4j2还处于beta阶段) 1.2 LogBack的结构  

spring boot --日志记录

淺唱寂寞╮ 提交于 2020-03-22 20:35:53
3 月,跳不动了?>>> Spring Boot 使用 Commons Logging 记录所有内部日志,但开放日志的底层实现。其为 Java Util Logging 、 Log4J2 和 Logback 提供了默认配置。 日志格式 2014-03-05 10:57:51.702 INFO 45469 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*] 日期和时间:毫秒精度,易于排序。 日志级别: ERROR 、 WARN 、 INFO 、 DEBUG 或 TRACE 。 进程 ID。 一个 --- 分隔符,用于区分实际日志内容的开始。 线程名称:在方括号中(可能会截断控制台输出)。 日志记录器名称:这通常是源类名称(通常为缩写)。 日志内容。 自定义日志配置 日志记录系统 文件 Logback logback-spring.xml 、 logback-spring.groovy 、 logback.xml 或者 logback.groovy Log4j2 log4j2-spring.xml 或者 log4j2.xml JDK(Java Util Logging) logging.properties 来源

Spring Boot中实现logback多环境日志配置

丶灬走出姿态 提交于 2020-03-20 12:36:57
参考: https://www.cnblogs.com/EasonJim/p/7801549.html https://docs.spring.io/spring-boot/docs/1.5.7.RELEASE/reference/htmlsingle/#boot-features-custom-log-configuration 在根据文档配置后,出现了以下错误 Logging system failed to initialize using configuration from 'classpath:logback-dev.xml' java.lang.IllegalStateException: Logback configuration error detected: ERROR in ch.qos.logback.core.joran.spi.Interpreter@1:27 - no applicable action for [springProfile], current ElementPath is [[springProfile]] ERROR in ch.qos.logback.core.joran.spi.Interpreter@9:24 - no applicable action for [root], current ElementPath is [

日志logback

≡放荡痞女 提交于 2020-03-18 07:16:48
http://tengj.top/2017/04/05/springboot7/ ------------------ logback使用指南。 公司配置 <?xml version="1.0" encoding="UTF-8"?> <configuration scan="true" scanPeriod="5 seconds" debug="true"> <property resource="${profile.properties}/logback.properties" /> <appender name="stdoutAppender" class="ch.qos.logback.core.ConsoleAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>${logback.stdoutLevel}</level> </filter> <!-- encoder 默认配置为PatternLayoutEncoder --> <encoder> <pattern>${logback.msg}</pattern> </encoder> </appender> <appender name="debugAppender" class="ch.qos.logback

Logback,SLF4J,Log4J2。了解它们并学习如何使用。(翻译)

久未见 提交于 2020-03-14 20:42:44
背景 如果您正在或在任何Java项目上工作,则可能已记录了一些debug,error或info语句以进行调试或跟踪。通过将库记录到磁盘或其他某种介质上的文件中来写这些语句。 日志记录是任何项目的关键方面,因此已经编写了各种框架。一些Java日志记录框架包括Log4j,logback,Apache通用日志记录,java.util.Logger等。所有这些日志记录器都将日志记录到文件或其他指定的介质中。 什么是SLF4J SLF4j代表Java的简单日志记录外观。顾名思义,它是一个外观库,为log4j,logback和java.util.logger等日志记录库提供了抽象。而且不要做实际的记录。 因此,针对Java的“基本上简单的日志记录外观”可以用作各种日志记录框架的简单外观或抽象,从而允许最终用户在部署时插入所需的日志记录框架。 Log4j,Logback和java.util.Logger是日志记录库,它们实际编写日志并具有各自的优缺点。作为行业标准的是Log4j2和logback。Log4j1.x已于2015年弃用。 因此出现了一个问题,为什么要使用slf4j而不是直接使用log4j2或logback? 我们可以直接使用log4j2而不使用slf4j。但是您现在已锁定到log4j2库。因此,将来如果您想移至其他任何日志记录库。您必须转到所有Java文件并更改记录器语句。

Logback配置解析

寵の児 提交于 2020-03-11 21:45:36
logback优点 比较吸引的几个优点如下: 内核重写,初始化内存加载更小 文档比较齐全 支持自动重新加载配置文件,扫描过程快且安全,它并不需要另外创建一个扫描线程 支持自动去除旧的日志文件,可以控制已经产生日志文件的最大数量 logback加载 在项目中引入logback依赖: <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>${logback.version}</version> </dependency> 启动项目时,logback会按照如下顺序扫描配置文件: 在系统配置文件System Properties中寻找是否有logback.configurationFile对应的value 在classpath下寻找是否有logback.groovy(即logback支持groovy与xml两种配置方式) 在classpath下寻找是否有logback-test.xml 在classpath下寻找是否有logback.xml 以上任何一项找到了,就不进行后续扫描,按照对应的配置进行logback的初始化,可从控制台输出信息中查看加载的配置文件。 当所有以上四项都找不到的情况下,logback会调用 ch.qos.logback

企业开发中选择logback而不是log4j的理由

六眼飞鱼酱① 提交于 2020-03-07 07:59:48
不知道看到这篇文章的Java工程师有没有考虑过这个问题:为什么在企业开发中会选择logback来记录日志,而不是log4j呢? 如果你以前没有考虑过这个问题,那么现在如果让你考虑一下,你可能觉的会是因为什么原因呢?本文就来为你回答这个问题。 无论从设计上还是实现上,Logback相对log4j而言有了相对多的改进。不过尽管难以一一细数,这里还是列举部分理由为什么选择logback而不是log4j。牢记logback与log4j在概念上面是很相似的,它们都是有同一群开发者建立。所以如果你已经对log4j很熟悉,你也可以很快上手logback。如果你喜欢使用log4j,你也许会迷上使用logback。 1. 更快的执行速度 基于我们先前在log4j上的工作,logback 重写了内部的实现,在某些特定的场景上面,甚至可以比之前的速度快上10倍。在保证logback的组件更加快速的同时,同时所需的内存更加少。 2.更充足的测试 Logback 历经了几年,数不清小时数的测试。尽管log4j也是测试过的,但是Logback的测试更加充分,跟log4j不在同一个级别。我们认为,这正是人们选择Logback而不是log4j的最重要的原因。人们都希望即使在恶劣的条件下,你的日记框架依然稳定而可靠。 3. logback-classic 非常自然的实现了SLF4J logback

细说Java主流日志工具库

好久不见. 提交于 2020-03-05 22:03:53
目录 概述    java.util.logging (JUL)    Log4j    Logback    Log4j vs Logback    common-logging    slf4j    common-logging vs slf4j    总结 实施日志解决方案    引入jar包      slf4j直接绑定日志组件      slf4j兼容非slf4j日志组件      spring 集成 slf4j      common-logging绑定日志组件    配置      完整的logback.xml参考示例      完整的log4j.xml参考示例      logback配置参数说明    使用API      slf4j用法      common-logging用法 参考 概述 在项目开发中,为了跟踪代码的运行情况,常常要使用日志来记录信息。 在Java世界,有很多的日志工具库来实现日志功能,避免了我们重复造轮子。 我们先来逐一了解一下主流日志工具。 java.util.logging (JUL) JDK1.4开始,通过 java.util.logging 提供日志功能。 它能满足基本的日志需要,但是功能没有Log4j强大,而且使用范围也没有Log4j广泛。 Log4j Log4j是apache的一个开源项目,创始人Ceki Gulcu。

一秒完成springboot与logback配置

一曲冷凌霜 提交于 2020-03-05 13:25:50
1. 一秒配置与效果 1.1 一秒配置 ​ spring boot中无须添加任何依赖,直接在resources文件夹下面新建logback.xml文件,将以下代码复制过去,配置完成,可以使用了。 <?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <!-- encoder 默认配置为PatternLayoutEncoder --> <encoder> <pattern>%d [%thread] %msg%n</pattern> </encoder> </appender> <appender name="info_log" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <!-- rollover daily --> <FileNamePattern>log/info-%d{yyyy-MM-dd}.%i.log</FileNamePattern> <!--