log4j日志级别

Logger日志打印规范

╄→尐↘猪︶ㄣ 提交于 2020-03-29 05:19:24
首先来看一下比较常用的Logger日志级别(部分未列出): error - 运行期错误日志记录,应该有专门的error日志文件。; warn - 警告信息,如程序调用了一个即将作废的接口,接口的不当使用,运行状态不是期望的但仍可继续处理等; info - 有必要的事件信息记录。 debug - 调试信息,业务处理进行状态,当前的变量值等; trace - 一些更详细的跟踪信息; 鉴于我们是一个金融系统,流量还是不算很大,我个人认为debug级别和info级别可以统一归为info级别下打印,这是考虑到现在系统稳定性不够,处于一个快速迭代开发的过程中,线上问题可能随时都有,所以将业务流转与部分变量值打印出来还是很有必要的。error记录错误日志,但如果错误是预期会发生的,并且已经有了其他的处理流程,则建议使用warn级别。例如在try-catch中catch块里处理后继续流程的日志记录。 1.Logger对象的定义: <strong>private static final Logger logger = LoggerFactory.getLogger(Test.class);</strong> 2.日志中不出现计算或方法调用,防止在打印日志的时候报错。 之前在上家公司的时候就确实出现过因打印日志而系统RunTimeException的,不应该出现。 3.try-catch如果往外抛出

日志Log4j使用

痞子三分冷 提交于 2020-03-27 19:09:31
1、导入Log4j的包 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> 2、配置Log4j.properties #将等级为DEBUG的日志信息输出到console和file这两个目的地,console和file的定义在下面的代码 log4j.rootLogger=DEBUG,console,file #控制台输出的相关设置 log4j.appender.console = org.apache.log4j.ConsoleAppender log4j.appender.console.Target = System.out log4j.appender.console.Threshold=DEBUG log4j.appender.console.layout = org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=[%c]-%m%n #文件输出的相关设置 log4j.appender.file = org.apache.log4j.RollingFileAppender log4j.appender.file

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

Java单体应用 - 常用框架 - 04.Log4j

别等时光非礼了梦想. 提交于 2020-03-21 22:24:43
原文地址: http://www.work100.net/training/monolithic-frameworks-log4j.html 更多教程: 光束云 - 免费课程 Log4j 序号 文内章节 视频 1 概述 - 2 日志级别 - 3 日志输出 - 4 SLF4J - 5 实例 - 6 实例源码 - 请参照如上 章节导航 进行阅读 1.概述 一个完整的软件,日志是必不可少的。 程序从开发、测试、维护、运行等环节,都需要向控制台或文件等位置输出大量信息。 这些信息的输出, 在很多时候是使用 System.out.println() 无法完成的。 日志信息根据用途与记录内容的不同,分为: 调试日志 、 运行日志 、 异常日志 等。 Log4j 的全称为 Log for java ,即专门用于 Java 语言的日志记录工具。 2.日志级别 为了方便对于日志信息的输出显示,对日志内容进行了分级管理。日志级别由高到低,共分 6 个级别: fatal(致命的) error warn info debug trace(堆栈) 为什么要对日志进行分级? 无论是将日志输出到控制台,还是文件,其输出都会降低程序的运行效率。但由于调试、运行维护的需要,客户的要求等原因,需要进行必要的日志输出。这时就必须要在代码中加入日志输出语句。 这些输出语句若在程序运行时全部执行, 则势必会降低运行效率

log4j.properties配置文件及详解

China☆狼群 提交于 2020-03-20 11:12:43
log4j配置文件有三个主要的组件:Logger,Appender和Layout,分别为日志类型,日志输出目的地,日志输出格式。 1. 配置日志级别及appenderName log4j.rootLogger=[level],console,debugFileAppender,errorFileAppender,... 注:其中 [level] 是日志输出级别:FATAL、ERROR、WARN、INFO、DEBUG 五个级别,通过定义的级别,你可以控制程序中的日志输出,例:如果定义了ERROR级别,程序中只有FARAL、ERROR 级别的 log 会被输出。 FATAL:致命错误。 ERROR:严重错误,主要是程序的错误。 WARN:一般警告,比如session丢失。 INFO:一般要显示的信息,比如登录退出。 DEBUG:程序的调试信息。 2. Log4j提供的输出目的地有以下几种: log4j.appender.appenderName= 输出目的地 (这里的appenderName是在前面定义的,可任意起名) org.apache.log4j.ConsoleAppender(控制台) org.apache.log4j.FileAppender(文件) org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件) org

log4j配置

China☆狼群 提交于 2020-03-20 08:54:38
java代码 this.logger = Logger.getLogger(Folder.class); this.rcMarryGaofaLogger = Logger.getLogger("aoa"); //指定日志配置文件,这样在wrapper环境下可以单独配置日志 PropertyConfigurator.configure("log4j.properties"); log4j.properties log4j.rootLogger= info, stdout, D ### direct log messages to stdout ### 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= %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n log4j.appender.stdout.layout.ConversionPattern= %d %p %t [%C.%M(%L)]

关于日志记录的一些感想

北慕城南 提交于 2020-03-16 08:52:07
刚刚我们组的产品经理和法务部的同事找我,说公司正在和某个客户打官司。为了反驳客户的某一些说辞,需要我帮忙找一找某个客户的某一份合同文件的操作日志。也就是: 需要确定就是这个客户在某一天的某个时间进入我们的某个系统进行了「合同签署」这个操作 事后我想了一下,里面确实有很多我们平时设计系统,实现系统功能时需要注意的一些点,所以我基于我目前的眼界和经验,总结一下,希望对大家有所帮助,争取不浪费读者朋友们的宝贵的时间。 日志的输出 我觉的最基本的但是也是最重要的事情就是日志的输出。因为没有日志输出也就没有下面要说的「存储收集」和「查询展示」了。 我不确定读者所在的格式是否有 日志规范 ,我觉的有一份好的日志规范还是很重要的,但是最重要的还是有效的执行下去。 统一日志框架 Java里存在众多的开源日志框架,比如: slf4j, logback, log4j, JCL(Apache Common Logging), JUL(JDK自带的java.util.logging) 。 我一般都采用 SLF4J 这个框架,因为它的API很简洁。其实它并不包含日志的实现,而仅仅是提供了众多的适配器来适配其他所有开源的日志框架,这就使得我们在代码中只需要面对SLF4J的API,然后可以任意的切换实现。 也许你们并不需要切换日志框架的实现这个功能,但往往我们的项目都会依赖很多的第三方的开源框架

Java常用日志框架介绍

一世执手 提交于 2020-03-16 04:06:16
转载自 Java常用日志框架介绍 java日志概述 对于一个应用程序来说日志记录是必不可少的一部分。线上问题追踪,基于日志的业务逻辑统计分析等都离不日志。java领域存在多种日志框架,目前常用的日志框架包括Log4j,Log4j 2,Commons Logging,Slf4j,Logback,Jul。 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以来的官方日志实现。 看了上面的介绍是否会觉得比较混乱,这些日志框架之间有什么异同,都是由谁在维护?

SpringBoot与日志

无人久伴 提交于 2020-03-14 06:15:07
1. 日志框架 日志抽象层: JCL(Jakarta Commons Logging) SLF4j(Simple Logging Facade for Java) jboss-logging 日志实现: Log4j JUL(java.util.logging) Log4j2 Logback 日志级别,由低到高 logger.trace() logger.debug() logger.info() logger.warn() logger.error() SpringBoot选用 SLF4J 和 Logback ,引入其他框架的时候,需要把该框架依赖的日志框架排除; 2. SLF4J 使用 // 需要导入 slf4j.jar 和 logback.jar import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class HelloWorld { public static void main(String[] args) { Logger logger = LoggerFactory.getLogger(HelloWorld.class); logger.info("Hello World"); } } 2.1 将其他日志框架统一转换为SLF4J 参考资料: Spring Boot 全集 SLF4J user

大数据学习day39----数据仓库02------1. log4j 2. 父子maven工程

痞子三分冷 提交于 2020-03-14 01:54:57
1. log4j(具体见log4j文档)   log4j是一个java系统中用于输出日志信息的工具。log4j可以将日志定义成多种级别:ERROR / WARN / INFO / DEBUG   log4j通过获取到一个logger对象来输出日志: val logger = Logger.getLogger("logger名称"); logger.info("日志内容")   所拿到的这些logger对象之间是有“父子”关系的,所有logger都是rootLogger的子!    "org.apache" 这个名字的logger是 "org"这个名字的logger的子! log4j的日志输出格式和目的地,都是可以通过参数配置的; 目的地的控制用Appender输出组件 常用的Appender组件: log4j.appender.xx=org.apache.log4j.ConsoleAppender log4j.appender.rollingFile=org.apache.log4j.RollingFileAppender 格式的控制用LayOut布局组件 log4j.appender.xx.layout=org.apache.log4j.PatternLayout log4j.appender.xx.layout.ConversionPattern=[%-5p] %d(%r) -