log4j日志级别

Web基础之日志

不羁岁月 提交于 2019-11-28 10:58:25
Web基础之日志   日志在企业开发中有着不可或缺的作用,它可以用以记录用户操作、系统运行状态和错误信息。日志记录的好坏直接关系到系统出现问题时定位的速度。   最开始的日志一般使用log4j,后来sun公司心有不甘,在jdk 1.4中加入了一个叫java.util.logging的日志包,简称jul。两种日志的api肯定是不同的,此时日志就出现了混乱。log4j的作者Ceki Gülcü就写了一个叫Jakarta Commons Logging的接口,简称jcl,来共同管理log4j和jul,并且jcl中提供了一个日志实现simplelog。接着又改良了下log4j,写出了logback。再后来Ceki Gülcü觉得jcl不好用(的确用问题),然后写了一个新的接口slf4j,来共同管理这些日志系统。接着呢Ceki Gülcü又觉得logj4性能不够了,又写了一个log4j2,。真是专注日志100年啊。   所以他们之间的关系是这样的:   其中slf4j并不提供日志实现,而是使用 外观模式 创建了一个接口,来统一这些日志的api。   这也是为什么阿里规范上强制使用slf4j的原因: 【 强制 】应用中不可直接使用日志系统(Log4j、Logback)中的 API,而应依赖使用日志框架SLF4J 中的 API,使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。

SpringBoot 异步输出 Logback 日志

对着背影说爱祢 提交于 2019-11-28 07:06:14
一、介绍 1.1 Logback   Logback是由log4j创始人设计的另一个开源日志组件,它分为下面下个模块: logback-core:其它两个模块的基础模块 logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logging logback-access:访问模块与Servlet容器集成提供通过Http来访问日志的功能 1.2 日志级别 包括: TRACE 、 DEBUG 、 INFO 、 WARN 和 ERROR 。 1.2.1 TRACE 特别详细的系统运行完成信息,业务代码中,不要使用。(除非有特殊用意,否则请使用 DEBUG 级别替代) 1.2.2 DEBUG 可以填写所有的想知道的相关信息(但不代表可以随便写, debug 信息要有意义,最好有相关参数); 生产环境需要关闭 DEBUG 信息 如果在生产情况下需要开启DEBUG,需要使用开关进行管理,不能一直开启。 1.2.3 INFO 系统运行信息 Service方法中对于系统/业务状态的变更; 主要逻辑中的分步骤。 外部接口部分 客户端请求参数(REST/WS); 调用第三方时的调用参数和调用结果。 说明 并不是所有的service都进行出入口打点记录,单一、简单service是没有意义的;

log4j2配置文件xml详细了解

和自甴很熟 提交于 2019-11-28 05:50:52
log4j2配置文件xml详细了解 详细参考: https://www.cnblogs.com/new-life/p/9246143.html  log4j 2.x版本不再支持像1.x中的.properties后缀的文件配置方式,2.x版本配置文件后缀名只能为".xml",".json"或者".jsn". 系统选择配置文件的优先级(从先到后)如下:       (1).classpath下的名为log4j2-test.json 或者log4j2-test.jsn的文件.       (2).classpath下的名为log4j2-test.xml的文件.       (3).classpath下名为log4j2.json 或者log4j2.jsn的文件.       (4).classpath下名为log4j2.xml的文件. 我们一般默认使用log4j2.xml进行命名。如果本地要测试,可以把log4j2-test.xml放到classpath,而正式环境使用log4j2.xml,则在打包部署的时候不要打包log4j2-test.xml即可。 缺省默认配置文件 <?xml version="1.0" encoding="UTF-8"?> <Configuration status="WARN"> //根节点有两个属性,status:指定日志打印级别

日志级别的显示以及如何配置

我怕爱的太早我们不能终老 提交于 2019-11-28 05:33:40
13:45:29 WARN (org.apache.commons.httpclient.HttpMethodBase:682) - Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended. 13:45:29 DEBUG (httpclient.wire.content:84) - << "4" 13:45:29 DEBUG (httpclient.wire.content:84) - << "5" 13:45:29 DEBUG (httpclient.wire.content:84) - << "[\r]" 13:45:29 DEBUG (httpclient.wire.content:70) - << "[\n]" 13:45:29 DEBUG (httpclient.wire.content:84) - << "{"success":"0","data":"tmp/2dba2f5c-e5d2-4f47-903d-b610c433077f.jpg"}" 13:45:29 DEBUG (httpclient.wire.content:84) - << "[\r]" 13:45:29 DEBUG (httpclient

SpringBoot优雅地配置日志

谁说胖子不能爱 提交于 2019-11-28 03:46:50
本文主要给大家介绍SpringBoot中如何通过sl4j日志组件优雅地记录日志。其实,我们入门 JAVA 的第一行代码就是一行日志,那你现在还在使用 System.out.println("Hello,小明!") 记录日志吗? 我经历过的日志组件 我最开始接触的日志组件是 Log4j Log4j 作为Apache的一个开放源代码的项目,通过使用 Log4j ,我们可以控制日志信息输送的目的地是控制台、文件等我们期望它输出到的地方;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。 我们可以通过一个配置文件来灵活地进行上面的配置,而不需要修改应用的代码。 Log4j 作为当时作为最先比较流行的日志框架,给我们在应用开发和维护带来了很大的便捷。 但是,如今还是慢慢的走下“神坛”呢,逐渐被 Logback 替代,众里寻她千百度,原来 Logback 是 升级版 ,相对 Log4j 而言有了更多的改进,而且开发人员竟然是同班人马(其实就是一个人写的)! 新星Logback Logback 主要有下面的特性: 更快的执行速度:基于我们先前在 Log4j 上的工作, Logback 重写了内部的实现,在某些特定的场景上面,甚至可以比之前的速度快上10倍。在保证 Logback 的组件更加快速的同时,同时所需的内存更加少; 充分的测试:

Log4j根配置文件

吃可爱长大的小学妹 提交于 2019-11-28 01:28:08
Log4j简介 Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。 Log4j配置文件log4cxx.properties包括以下几个基本信息: Log4J的三个组件: Logger:日志记录器,负责收集处理日志记录 (如何处理日志) Appender:日志输出目的地,负责日志的输出 (输出到什么 地方) Layout:日志格式化,负责对输出的日志格式化(以什么形式展现) 1.Log4j 根配置语法 log4j.rootLogger = [ level ] , appenderName1, appenderName2, … (1) level 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者自定义的级别。注意,如果log4j.logger. appenderName没有指定任何日志等级,将会使用这里的日志等级。 (2)Log4j建议只使用四个级别,优先级从高到低分别是ERROR、WARN、INFO

日志记录---log4j详解

倖福魔咒の 提交于 2019-11-27 23:49:31
Apache官方项目地址 通常的日志记录的缺点是会减慢程序的运行速度,如果用普通的System.out的话影响视觉效果,另外解耦度也不好,而log4j的设计则使得日志记录变得可靠快速和可拓展性好。 log4j是用文件来配置的,学习曲线低。 Log4j有三个组件: loggers(日志写出器,供程序员输出日志信息) , appenders(日志输出地) 和 layouts(展现方式) 。这三个组件是一块工作的,使开发者通过日志类型和日志等级记录日志,同时使得这些日志格式化。 log4j类图 Logger - 日志写出器,供程序员输出日志信息 Appender - 日志目的地,把格式化好的日志信息输出到指定的地方去 ConsoleAppender - 目的地为控制台的 AppenderFileAppender - 目的地为文件的 AppenderRollingFileAppender - 目的地为大小受限的文件的Appender Layout - 日志格式化器,用来把程序员的logging request格式化成字符串 PatternLayout - 用指定的pattern格式化logging request的Layout 日志结构 java是java.util的父亲,是java.util.vector的祖先 root logger一般在log树的顶端,一般是不存在的

log4j笔记

隐身守侯 提交于 2019-11-27 21:23:19
1、什么是log4j? Log4j 是Apache为Java提供的日志管理工具。他与System.out.println()的作用相似,用来跟踪、调试、维护程序。 2、让log4j与System.out.println()进行比较 * 前者专业日志工具 > 可以随意的指定输出目的地(可以是控制台,文件) > 可以灵活控制级别(只输出错误级别的日志,而信息级别的不输出) > 可以控制输出的格式! * 后者只能输出到控制台!无法控制级别(信息、错误)! 3、什么东西使用了log4j * c3p0 * hibernate * spring 4、Log4j中有三大组件 Logger(日志器):用来输出日志消息的类,它可以输出不同级别的消息 Appender(日志输出目标):通常我们希望日志输出到文件中,以及控制台,也可能希望日志输出数据库,该类就表示一个输出的目标 Layout(格式化器):对输出的消息进行格式化,例如在消息中添加日期,以及级别等 5、配置文件 (1)日志级别 在Log4j中日志消息分为五个级别,级别由高到低排列如下: * FATAL:重大错误,例如系统崩溃; * ERROR:错误,例如某模块瘫痪; * WARN:警告,程序的隐患,如果不处理,将来可能就是错误; * INFO:信息,可以用来查看程序执行的流程; * DEBUG:调试,用来调试程序的bug。 (

Spring Boot 整合 Logback 日志框架

不想你离开。 提交于 2019-11-27 19:05:30
常用处理 Java 的日志组件有 slf4j、log4j、logback、common-logging 等。logback 基于 log4j 基础上大量改良,不能单独使用,推荐配合日志框架 slf4j 来使用。 logback 当前分成三个模块:logback-core、logback-classic 和 logback-access,logback-core 是其它两个模块的基础模块 logback 的核心对象:Logger(日志记录器)、Appender(指定日志输出的目的地,目的地可以是控制台,文件)和 Layout(日志布局 格式化日志信息的输出) ### 设置### log4j.rootLogger = debug,stdout,D,E ### 输出信息到控制抬 ### log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l

Spring boot 日志 Logback

三世轮回 提交于 2019-11-27 15:17:48
日志在开发中的作用是不言而喻的,java也有很多优秀的日志工具比如log4j, spring boot中默认集成了 logback ,关于 logback 大家可以了解一下 https://logback.qos.ch/ 当然,spring boot 中我们也可以使用其他日志框架:By default, if you use the “Starters”, Logback is used for logging. Appropriate Logback routing is also included to ensure that dependent libraries that use Java Util Logging, Commons Logging, Log4J, or SLF4J all work correctly. # 日志级别 所有日志记录系统都可以使用 TRACE,DEBUG,INFO,WARN,ERROR,FATAL 如果设置在某个级别上,那么比此优先级更高的log都可以打印出来,例如,设置成INFO那么WARN,ERROR,FATAL都可以被打印出来 我们可以在配置未文件中设置 logging.level.org.springframework.web=INFO # 日志格式 2014-03-05 10:57:51.112 INFO 45469 --- [