log4j配置

Spring监听器配置

喜欢而已 提交于 2019-11-27 23:51:28
使用spring框架时如果同时使用org.springframework.web.util.Log4jConfigListener监听器,那么在web.xml中的监听器的注册顺序为org.springframework.web.context.ContextLoaderListener在后,org.springframework.web.util.Log4jConfigListener在前,否则就回出现如下警告: log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader). log4j:WARN Please initialize the log4j system properly. 我们在spring的api文档中可以看到下面一段说明: Bootstrap listener to start up Spring's root WebApplicationContext . Simply delegates to ContextLoader . This listener should be registered after Log4jConfigListener in web.xml , if the latter is used. 正确配置如下

日志记录---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 22:05:40
package com.qyf.controller; import com.qyf.domain.SysLog; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.EnableAspectJAutoProxy; import org.springframework.security.core.context.SecurityContextImpl; import org.springframework.stereotype.Component; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import java.util.Date; @Component @Aspect @EnableAspectJAutoProxy public

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。 (

常用jar包整理(持续更新中)

匆匆过客 提交于 2019-11-27 12:21:18
1.commons-codec.jar 包含一些通用的编码解码算法。包括一些语音编码器,Hex,Base64,MD5 2.commons-lang 跟java.lang这个包的作用类似,Commons Lang这一组API也是提供一些基础的、通用的操作和处理,如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、枚举、日期和时间的处理等等。 最常用的两个类 ArrayUtils – 用于对数组的操作,如添加、查找、删除、子数组、倒序、元素类型转换等; StringUtils – 处理String的核心类,提供了相当多的功能; 3.commons-collectionsc Commons项目组中的一个各种集合类和集合工具类的封装 常用类 CollectionUtils 4.org.apache.commons.pool 该项目是一个基本的对象池组件;Pool提供三个主要方面对象池的API: a) 一个提供客户方和实现方用来实现简单、可变的对象池的基本接口。 b) 一个用来创建模块化对象池的工具。 c) 几个通用的对象池的实现。 5.commons-logging.jar log4j.jar 怎么才能让Log4j发挥它的作用呢?答案很简单,只需满足“classpath中有Log4j的jar包”。前面已经说过了,commons

Log4j 学习笔记

流过昼夜 提交于 2019-11-27 08:18:31
Log4j 学习笔记 1 Log4j 概述 1.1 Log4j基础 1.1.1 Log4j的下载 1.1.2 Log4j2与Log4j区别 1.1.2 日志级别 1.1.3 日志输出控制文件 2 创建第一个项目 2.1 添加依赖 2.2 放入日志输出控制文件 2.3 代码中实现日志记录 2.4 结果 3 日志输出控制文件分析 3.1 日志输出控制文件组成 3.2 修饰日志附加器 3.3 控制台附加器 3.4 文件附加器File 3.5 滚动文件附加器 3.6 Log4j常见布局类型 3.7 配置根Logger    1 Log4j 概述   一个完整的软件,日志是必不可少的。程序从开发,测试,维护,运行等环节,都需要向控制台或文件等位置输出大量的信息。这些信息的输出,在很多时间是使用System.out.println()是无法实现的。日志信息根据用途与记录内容不同,分为调试日志、运行日志、异常日志等。用于记录的日志技术很多,如jdk的logger技术,apache的log4j、log4j2、logback技术等。Log4j的全称为Log for Java,即,专门用于java语言的日志记录工具。 1.1 Log4j基础 1.1.1 Log4j的下载 Log4j下载地址: http://logging.apache.org 1.1.2 Log4j2与Log4j区别   a

log4j2.xml ------配置文件

落花浮王杯 提交于 2019-11-27 08:01:35
log4j2日志输出益处:西橡胶与 log4j 易于读取日志输出内容,且不需要保存到日志文件夹中,节约内存空间!!! 1.....pom.xml 需要导入的jar包: 1 <!--日志--> 2 <dependency> 3 <groupId>log4j</groupId> 4 <artifactId>log4j</artifactId> 5 <version>1.2.17</version> 6 </dependency> 7 <dependency> 8 <groupId>org.apache.logging.log4j</groupId> 9 <artifactId>log4j-api</artifactId> 10 <version>2.10.0</version> 11 </dependency> 12 <dependency> 13 <groupId>org.apache.logging.log4j</groupId> 14 <artifactId>log4j-core</artifactId> 15 <version>2.10.0</version> 16 </dependency> 17 <dependency> 18 <groupId>org.apache.logging.log4j</groupId> 19 <artifactId>log4j-jcl<

JavaWeb项目中的配置log4j由Flume-ng(1.6.0)写入HDFS的项目实例

强颜欢笑 提交于 2019-11-27 07:46:39
提要:本文中项目代码运行在windows的eclipse开发环境下。 注意事项:项目中需要引用Flume提供的jar包,最新版的Flume-1.6.0的jar包需要JDK1.7的环境,JDK1.8会报 ClassNotFoundException:org.apache.flume.clients.log4jappender.Log4jAppender 错误。 1、将flume安装路径下的tools文件下的jar包:flume-ng-log4jappender-1.6.0-jar-with-dependencies.jar 引入项目。(这个包是包含了所有依赖包的包。有的示例里说可以引用flume-ng-core-1.6.0.jar之类的等等,那种运行会报错,会报很多类找不到,还需要引用好多jar包,应用不便) 如图: OS:作为一个小新手,之前查了好多资料,不同版本包名不一样,好多只说引入包,就不写路径或者路径真的不太一样,真是神烦。 2、 配置log4j,以下为配置文件: log4j.rootLogger=INFO,console,file,flume log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout

spark脚本日志输出级别设置

|▌冷眼眸甩不掉的悲伤 提交于 2019-11-27 03:40:14
一、spark日志级别设置  1、 spark脚本日志输出级别设置     import org.apache.log4j.{ Level, Logger } Logger.getLogger("org").setLevel(Level.WARN) Logger.getLogger("org.apache.spark").setLevel(Level.WARN) Logger.getLogger("org.eclipse.jetty.server").setLevel(Level.WARN) spark.sparkContext.setLogLevel("WARN") 详细信息,请参考 http://logging.apache.org/log4j 2、spark应用·日志级别设置 方法二: 添加 log4j.properties 到 resource    注释 : Spark log4j 日志配置详解 https://blog.csdn.net/ZMC921/article/details/80238392 来源: https://www.cnblogs.com/jiejunwang/p/11342303.html

Log4j 配置和使用

时光毁灭记忆、已成空白 提交于 2019-11-26 21:50:36
Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。 1. 配置文件 Log4J配置文件的基本格式如下: #配置根Logger log4j.rootLogger = [ level ] , appenderName1 , appenderName2 , … #配置日志信息输出目的地Appender log4j.appender.appenderName = fully.qualified.name.of.appender.class   log4j.appender.appenderName.option1 = value1   …   log4j.appender.appenderName.optionN = valueN #配置日志信息的格式(布局) log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class   log4j.appender.appenderName.layout.option1 = value1   …   log4j.appender.appenderName.layout.optionN = valueN 其中