log4j日志级别

Java日志相关记录 (Jul jcl log4j log4j2 Logback SLF4J)

折月煮酒 提交于 2019-12-21 18:11:10
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一、写在前面 在java 中实现记录日志的方式有很多种 1. 最初的方式,就是system.print.out ,err 这样直接在控制台打印消息,缺点太多了,这样与业务逻辑无关的代码会变得更多,不能按日志等及输出,以及那些不输出等。 2. JUL,java util logging在jdk的java.util.logging包中,也叫jkdLog或者jdk14log; 在JDK 1.4 版本之后,java提供了日志的API ,可以往文件中写日志了,最方便不需要第三方包,其实际使用人较少。 3. log4j , 最强大的记录日志的方式。 可以通过配置 .properties 或是 .xml 的文件, 配置日志的目的地,格式等等,基于老的jdk性能不高,该项目现在已经停止维护,但是用的人还是最多的。 4. Log4j2 该项目是log4j的升级版,性能较好,也吸收了logback等日志记录组件的优点。 5. commons-logging是一个日志接口,最综合和常见的日志记录方式, 经常是和log4j或者log4j2 结合起来使用。 6. Slf4j也是一个日志接口,最常见的是和logback一起使用。 7. 日志等级其实最常用的就是这四个等级(debug,info,warn,error)。 二、JUL(java

log4j2使用整理

你离开我真会死。 提交于 2019-12-21 17:38:11
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 关键概念 LoggerConfig: 日志配置, 用于整合多个 Appender, 进行日志打印. Appender: 追加器, 用于操作 Layout 和 Manager, 往单一目的地进行日志打印. Layout: 布局, 用于把 LogEvent 日志事件序列化成字节序列, 不同 Layout 实现具有不同的序列化方式. Manager: 管理器, 用于管理输出目的地, 如: RollingFileManager 用于管理文件滚动以及将字节序列写入到指定文件中 Filter: 过滤器, 用于对 LogEvent 日志事件加以过滤, LoggerConfig 和 Appender 都可以配置过滤器, 也就是说日志事件会经过一总一分两层过滤. 日志等级 FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL Configuration status="OFF":这个status配置的是,Log4j2 组件本身日志级别,指的是如果 Log4j2 本身出错,打印出的日志级别配置。 日志名称、继承体系 名称和继承体系 Logger中存在与JAVA体系类似的继承关系,Logger中的超类是RootLogger,它是所有Logger的父类 Logger的继承关系是通过**名称

log4j.properties详解加日志规范

给你一囗甜甜゛ 提交于 2019-12-21 15:10:41
java常用日志框架 Log4j Apache Log4j是一个基于Java的日志记录工具。它是由Ceki Gülcü首创的,现在则是Apache软件基金会的一个项目。 Log4j是几种Java日志框架之一 Log4j 2 Apache Log4j 2是apache开发的一款Log4j的升级产品 Commons Logging Apache基金会所属的项目,是一套Java日志接口,之前叫Jakarta Commons Logging,后更名为Commons Logging Slf4j 类似于Commons Logging,是一套简易Java日志门面,本身并无日志的实现。(Simple Logging Facade for Java,缩写Slf4j) Logback 一套日志组件的实现(slf4j阵营) Jul (Java Util Logging),自Java1.4以来的官方日志实现。 在src下建立 log4j.properties ,其内容如下 #设置日志级别和输出端别名 log4j.rootLogger=INFO,console,fil #设置输出端为“控制台”,以下是此输出端的具体定 log4j.appender.console=org.apache.log4j.ConsoleAppender 设置布局模式为“灵活布局” log4j.appender.console

log4j和slf4j的区别

我只是一个虾纸丫 提交于 2019-12-21 14:14:28
之前在项目中用的日志记录器都是log4j的日志记录器,可是到了公司发现项目要求使用slf4j,于是想着研究一下slf4j的用法。   注意:每次引入Logger的时候注意引入的jar包,因为有Logger的包太多了。。。。。。      Logger必须作为类的静态变量使用 。原因如下: 1 使用static修饰的属性是归这个类使用的2 也就是说不论这个类实例化多少个,大家用的都是同一个static属性3 log4j记录的是当前类的日志,不是每个实例的日志4 所以只要有一个记录就可以了创建日志记录器方法:(最好声明加final关键字) //private static final Logger logger = LoggerFactory.getLogger(Slf4jTest.class);// slf4j日志记录器 private static final Logger logger = LoggerFactory.getLogger(Slf4jTest.class.getName());// slf4j日志记录器 简要记录一下日志级别: 每个Logger都被了一个日志级别(log level),用来控制日志信息的输出。日志级别从高到低分为: A:off 最高等级,用于关闭所有日志记录。 B:fatal 指出每个严重的错误事件将会导致应用程序的退出。 C:error

Log4j理解

纵然是瞬间 提交于 2019-12-21 09:13:31
从刚开始到现在,一直对打印日志什么感兴趣,今天下午有时间,就仔细研究了下。 1.什么是Log4j?什么是slf4j? Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。 SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志 2.如何使用?   如果是maven的话,就要在pom.xnl文件中添加配置依赖文件路径。 3.添加log4.properties配置文件。 说明: log4j.rootCategory=DEBUG, stdout , D,E 此句为将等级为INFO的日志信息输出到stdout和D,E这三个目的地,stdout和D,E的定义在下面的代码,可以任意起名。等级可分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL

log4j与slf4j

我与影子孤独终老i 提交于 2019-12-21 08:24:09
什么是log4j? Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。 什么是slf4j? SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统。 实际上,SLF4J所提供的核心API是一些接口以及一个LoggerFactory的工厂类。从某种程度上,SLF4J有点类似JDBC,不过比JDBC更简单,在JDBC中,你需要指定驱动程序,而在使用SLF4J的时候,不需要在代码中或配置文件中指定你打算使用那个具体的日志系统。如同使用JDBC基本不用考虑具体数据库一样,SLF4J提供了统一的记录日志的接口,只要按照其提供的方法记录即可,最终日志的格式、记录级别、输出方式等通过具体日志系统的配置来实现,因此可以在应用中灵活切换日志系统。

log4j

假如想象 提交于 2019-12-21 05:00:22
什么是log4j? 来自百度百科:Log4j是 Apache 的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是 控制台 、文件、 GUI 组件,甚至是套接口服务器、 NT 的事件记录器、 UNIX Syslog 守护进程 等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个 配置文件 来灵活地进行配置,而不需要修改应用的代码。 Log4j由三个重要的组件构成: 日志信息的优先级,日志信息的输出目的地,日志信息的输出格式。 日志信息的优先级从高到低有ERROR、WARN、 INFO、DEBUG,分别用来指定这条日志信息的重要程度; 输出目的地指定了日志将打印到控制台还是文件中; 输出格式则控制了日志信息的显示内容。 Log4j支持两种配置文件格式, 一种是XML格式的文件,一种是Java特性文件(键=值(xxx.properties)) Java特性文件的配置方法: 1.配置根Logger,其语法为: log 4j.rootLogger = [ level ] , appenderName, appenderName, … 其中,level 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者自定义的级别

Spring-Boot日志

折月煮酒 提交于 2019-12-20 23:56:30
title: Spring Boot日志 catalog: true date: 2019-09-23 13:35:41 subtitle: SpringBoot日志 header-img: “/img/article_header/article_header.png” tags: Spring Boot catagories: SpringBoot ​ 一.日志框架 市面上的日志框架; JUL、JCL、Jboss-logging、logback、log4j、log4j2、slf4j… 日志门面 (日志的抽象层) 日志实现 JCL(Jakarta Commons Logging) SLF4j(Simple Logging Facade for Java) jboss-logging Log4j JUL(java.util.logging) Log4j2 Logback 左边选一个门面(抽象层)、右边来选一个实现; 日志门面: SLF4J; 日志实现:Logback; SpringBoot:底层是Spring框架,Spring框架默认是JCL SpringBoot选用的是SLF4J和logback 二.SLF4J使用 1.如何在系统中使用SLF4j 日志记录方法不应该直接调用日志的实现类,二十调用日志抽象层里面的方法; 给系统导入SLF4j的jar和logback的实现jar

Java 中的日志及日志框架

☆樱花仙子☆ 提交于 2019-12-20 19:36:52
记录应用系统的日志主要有三个原因:记录操作轨迹、监控系统 运行状况、回溯系统故障。 日志规范 为降低沟通和学习成本,应用中的扩展日志命名方式应该有统一的约定,通过命名能直观明了的地表名当前日志文件是什么功能。 推荐的日志文件的命名:appName_logType_logName.log 其中 logType 为日志类型,推荐 分类有 stats、monitor、visit等 logName 为日志描述 代码 规约推荐日志文件 至少保存15天,可根据日志文件的重要程度、文件大小及磁盘 空间在自行延长 保存时间。 日志的级别 针对不同的场景,日志被分为五种不同的级别,按照重要程度由低到高排序: DEBUG 级别日志 记录对调试程序有帮助的信息。 INFO 级别日志 用来记录程序的运行现场,虽然此处并未发生错误,但是对排查其他错误具有指导意义。 WARN 级别日志 也可以用来记录程序运行线程,但是更偏向于表名此处有出现潜在的错误的可能。 ERROR 级别日志 表明当前程序运行发生了错误,需要被关注。但是当前发生的错误,没有影响系统的继续运行。 FATAL 级别日志 表名当前程序运行出现了严重的错误事件,并且将会导致应用程序中断。 打印日志的正确姿势 // 使用条件判断形式 if ( logger . isDebugEnabled ( ) ) { logger . debug (

log4j常见配置

隐身守侯 提交于 2019-12-20 17:27:14
依赖jar <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> Level :日志输出的几种级别 FATAL 0 ERROR 3 WARN 4 INFO 6 DEBUG 7 Appender 为日志输出目的地,Log4j提供的appender有以下几种: org.apache.log4j.ConsoleAppender(控制台) org.apache.log4j.FileAppender(文件) org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件) org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件) org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方) Layout :日志输出格式,Log4j提供的layout有以下几种: org.apache.log4j.HTMLLayout(以HTML表格形式布局), org.apache.log4j.PatternLayout(可以灵活地指定布局模式), org.apache.log4j