网站后台密码忘记了,国家在线观看免费视频,私密浏览器在线观看,中国建设部网站四库平台点击下方关注我#xff0c;然后右上角点击...“设为星标”#xff0c;就能第一时间收到更新推送啦~~~ LogBack 和 Log4j 都是开源日记工具库#xff0c;LogBack 是 Log4j 的改良版本#xff0c;比 Log4j 拥有更多的特性#xff0c;同时也带来很大性能提升。LogBack 官方建… 点击下方关注我然后右上角点击...“设为星标”就能第一时间收到更新推送啦~~~ LogBack 和 Log4j 都是开源日记工具库LogBack 是 Log4j 的改良版本比 Log4j 拥有更多的特性同时也带来很大性能提升。LogBack 官方建议配合 Slf4j 使用这样可以灵活地替换底层日志框架。 Logback 主要由三个模块组成 logback-corelogback-classiclogback-access 其中 logback-core 提供了 LogBack 的核心功能是另外两个组件的基础。logback-classic 的地位和作用等同于 Log4J它也被认为是 Log4J 的一个改进版并且它实现了简单日志门面 SLF4J所以当想配合 SLF4J 使用时需要将 logback-classic 加入 classpath而 logback-access 主要作为一个与 Servlet 容器交互的模块比如说 tomcat 或者 jetty提供一些与 HTTP 访问相关的功能。 1 Logback 使用实例 1、选择 jar 包 想在 Java 程序中使用 Logback需要依赖三个 jar 包分别是 slf4j-apilogback-corelogback-classic。其中 slf4j-api 并不是 Logback 的一部分建议将 SLF4J 与 Logback 结合使用。 pom.xml dependencygroupIdorg.slf4j/groupIdartifactIdslf4j-api/artifactIdversion1.7.25/version
/dependencydependencygroupIdch.qos.logback/groupIdartifactIdlogback-core/artifactIdversion1.2.3/version
/dependencydependencygroupIdch.qos.logback/groupIdartifactIdlogback-classic/artifactIdversion1.2.3/version
/dependencydependencygroupIdch.qos.logback/groupIdartifactIdlogback-access/artifactIdversion1.2.3/version
/dependency 2、logback.xml 在 src 根目录下建立 logback.xml根据自己的需求相应的修改其中的配置其内容如下所示 ?xml version1.0 encodingUTF-8?
!--日志级别以及优先级排序: OFF FATAL ERROR WARN INFO DEBUG TRACE ALL --
!-- status用来指定log4j本身的打印日志的级别 --
!--monitorIntervalLog4j能够自动检测修改配置文件和重新配置本身设置间隔秒数 --
configuration statusWARN monitorInterval30!--先定义所有的appender --appenders!--这个输出控制台的配置 --console nameConsole targetSYSTEM_OUT!--输出日志的格式 --PatternLayoutpattern[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] %l %logger{36} - %msg%n //console!--定义输出到指定位置的文件 --File namelog fileName/jpm/log4j2/logs/log.log appendtruePatternLayoutpattern[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] %l %logger{36} - %msg%n //File!-- 这个会打印出所有的info及以下级别的信息每次大小超过size则这size大小的日志会自动存入按年份-月份建立的文件夹下面并进行压缩作为存档 --RollingFile nameRollingFileInfo fileName/jpm/log4j2/logs/info.logfilePattern/jpm/log4j2/logs/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log!--控制台只输出level及以上级别的信息onMatch其他的直接拒绝onMismatch --!-- DENY日志将立即被抛弃不再经过其他过滤器NEUTRAL有序列表里的下个过滤器过接着处理日志ACCEPT日志会被立即处理不再经过剩余过滤器。--ThresholdFilter levelerror onMatchDENYonMismatchACCEPT /PatternLayoutpattern[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] %l %logger{36} - %msg%n /PoliciesTimeBasedTriggeringPolicy /SizeBasedTriggeringPolicy size100 MB //Policies!-- DefaultRolloverStrategy属性如不设置则默认为最多同一文件夹下7个文件这里设置了30 --DefaultRolloverStrategy max30 //RollingFileRollingFile nameRollingFileError fileName/jpm/log4j2/logs/error.logfilePattern/jpm/log4j2/logs/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.logThresholdFilter levelERROR onMatchACCEPTonMismatchDENY /PatternLayoutpattern[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] %l %logger{36} - %msg%n /PoliciesTimeBasedTriggeringPolicy /SizeBasedTriggeringPolicy size100 MB //Policies/RollingFile/appenders!--只有定义了logger并引入的appenderappender才会生效 --loggers!--过滤掉spring和mybatis的一些无用的DEBUG信息 --logger nameorg.springframework levelINFO/loggerlogger nameorg.mybatis levelINFO/loggerroot levelINFOappender-ref refConsole /appender-ref reflog /appender-ref refRollingFileInfo /appender-ref refRollingFileError //root/loggers
/configuration 3、输出日志的代码示例 package jpm.logback;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class TestLogback { public static void main(String[] args) { final Logger LOGGER LoggerFactory.getLogger(TestLogback.class);LOGGER.debug(print debug log.);LOGGER.info(print info log.);LOGGER.error(print error log.);}
} 4、打印日志结果 上例使用 SLF4J 做日志接口 Logback 做日志实现的日志示例。 后面为大家介绍项目中的 Log4j2 使用示例。