当前位置:首页 » 存储配置 » log4j怎么配置

log4j怎么配置

发布时间: 2022-01-08 07:06:05

A. log4j怎么用

Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
一、Log4j配置

第一步:加入log4j-1.2.8.jar到lib下。

第二步:在CLASSPATH下建立log4j.properties。内容如下:
log4j.rootLogger=DEBUG,stdout,logout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=-%d{yyyy-MM-dd HH:mm:ss,SSS}%c - %m%n

log4j.appender.logout=org.apache.log4j.RollingFileAppender
log4j.appender.logout.File=log.txt
log4j.appender.logout.MaxFileSize=500KB
log4j.appender.logout.MaxBackupIndex=1
log4j.appender.logout.layout=org.apache.log4j.PatternLayout
log4j.appender.logout.layout.ConversionPattern=-%d{yyyy-MM-dd HH:mm:ss,SSS} - %c{1} - %m%n

在你的类中引入:
import org.apache.log4j.*;
新建一个log4j实例:
private static final Logger logger = Logger.getLogger( "类MyAroundInterceptor ");
调用log4j:
logger.warn( "hahah,log4j的使用! ");

总的来说用了log4j之后你就不用在你的代码当中写一大堆的System.out.print( "error1 ");这种代码,因为这样是很不利于维护的。

B. spring如何配置log4j

Spring是可以配置LG4G的,这个完全是可以实现的。

C. 如何查看 log4j 加载 哪个 配置

自动加载配置文件:
(1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解。log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log4j.properties文件。然后加载配置。配置文件放置位置正确,不用在程序中手动加载log4j配置文件。如果将配置文件放到了config文件夹下,在build Path中设置下就好了。

若要手动加载配置文件如下:
(1)PropertyConfigurator.configure("log4j.properties") 默认读取的是项目根目录的路径。此时的log4j.properties要放在项目目录下。

D. log4j 报错,怎样修改配置

请帖出配置文件及错误日志。

E. 如何编写log4j.properties文件,配置日志信息

第一步:在工程中加入log4j所使用的jar文件
1:项目 > 属性 :弹出项目的属性窗口
2:java构建路径>?库>?添加外部JAR:弹出选择JAR的窗口
3:通过选择JAR的窗口,找到log4j-1.2.x.jar,并确认
4:回到项目的属性窗口,点击确定
第二步:创建log4j.properties文件
1:选择欲使用log4j的项目>?右键点击src >?新建>?其他 :弹出选择向导窗口
2:在选择向导窗口中,选择常规?> 文件?> 下一步:弹出新建文件的窗口
3:在新建文件窗口中,输入文件名log4j.properties ? 完成:创建工作结束
第三步:使用log4j记录日志信息
import org.apache.log4j.Logger;
public class Log4j {
public static void main(String[] args) {
Logger logger = Logger.getLogger(AccpTeacherLog4j.class.getName());//获取日志记录器,这个记录器将负责控制日志信息
try {
logger.debug("设置教员的编号。");//使用Logger对象的debug、info方法输出日志信息
} catch (IllegalArgumentException ex) {
logger.info(ex.getMessage());//使用Logger对象的debug、info方法输出日志信息
}
}
}
第四步:编写log4j.properties文件,配置日志信息
### 把日志信息输出到控制台 ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender//日志信息将写到控制台
log4j.appender.stdout.Target=System.out//信息打印到System.out上
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %m%n//指定输出格式:显示日期和log信息
### 把日志信息输出到文件:accp.log ###
log4j.appender.file=org.apache.log4j.FileAppender//日志信息将写到文件中
log4j.appender.file.File=accp.log//指定日志输出的文件名
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %l %m%n//指定输出格式:显示日期,日志发生位置和日志信息
### 设置优先级别、以及输出源 ###
log4j.rootLogger=debug, stdout, file//设置优先级别为debug、
日志被输出到多个输出源
注:优先级从高到低分别是ERROR、WARN、INFO、DEBUG
在此处,如果优先级别设为info,那么使用debug方法打印的日志信息将不被输出

F. log4j 一个线程记录一个日志如何配置

log4j.rootLogger 是配置log4j的根logger
具体配置方法请看下面代码

log4j.properties配置文件讲解如下:
# Set root logger level to DEBUG and its only appender to A1
#log4j中有五级logger
#FATAL 0
#ERROR 3
#WARN 4
#INFO 6
#DEBUG 7

配置根Logger,其语法为:
#log4j.rootLogger = [ level ] , appenderName, appenderName, …
log4j.rootLogger=INFO, A1 ,R
#这一句设置以为着所有的log都输出
#如果为log4j.rootLogger=WARN, 则意味着只有WARN,ERROR,FATAL
#被输出,DEBUG,INFO将被屏蔽掉.
# A1 is set to be a ConsoleAppender.
#log4j中Appender有几层如控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等
#ConsoleAppender输出到控制台
log4j.appender.A1=org.apache.log4j.ConsoleAppender
# A1 使用的输出布局,其中log4j提供4种布局. org.apache.log4j.HTMLLayout(以HTML表格形式布局)
#org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
#org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
#org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

log4j.appender.A1.layout=org.apache.log4j.PatternLayout
#灵活定义输出格式 具体查看log4j javadoc org.apache.log4j.PatternLayout
#d 时间 ....
log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
#R 输出到文件 RollingFileAppender的扩展,可以提供一种日志的备份功能。
log4j.appender.R=org.apache.log4j.RollingFileAppender
#日志文件的名称
log4j.appender.R.File=log4j.log
#日志文件的大小
log4j.appender.R.MaxFileSize=100KB
# 保存一个备份文件
log4j.appender.R.MaxBackupIndex=1 log4j.appender.R.layout=org.apache.log4j.TTCCLayout
#log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

配置根Logger,其语法为:
log4j.rootLogger = [ level ] , appenderName, appenderName, ...

level 是日志记录的优先级
appenderName就是指定日志信息输出到哪个地方。您可以同时指定多个输出目的地。

配置日志信息输出目的地Appender,其语法为
log4j.appender.appenderName = fully.qualified.name.of.appender.class
log4j.appender.appenderName.option1 = value1
...
log4j.appender.appenderName.option = valueN

Log4j提供的appender有以下几种:
org.apache.log4j.ConsoleAppender(控制台),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

配置日志信息的格式(布局),其语法为:
log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class
log4j.appender.appenderName.layout.option1 = value1
....
log4j.appender.appenderName.layout.option = valueN

Log4j提供的layout有以下几种:
org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

G. log4j在java的web项目中怎么用的,如何配置等等。。

在web.xml中添加配置:
<!-- 配置log4j配置文件的路径,可以是xml或 properties(此参数必须配)-->
下面使用了classpath 参数指定log4j.properties文件的位置,这样log4j的配置文件就不用非要放到src的下面:
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:config/log4j/log4j.properties</param-value>
</context-param>
使用spring的监听器,当应用启动时来读取log4j的配置文件
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>

H. maven 怎样配置log4j

1. 如果你使用 log4j 1.x 版本 这么配置


<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>



2. 如果你使用 log4j 2.x 版本 这么配置


		<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.6.2</version>
</dependency>

I. log4j2的资源文件具体怎么配置

log4j2和log4j是全局配置的,只能有一个配置文件。 你说的引入另外一个jar,里面的某些方法不想被主工程的log4j2拦截吗? 你可以在Log4j2.xml中,对拦截的包进行单独配置。 如果不能达到需求,建议去log4j2官网文档,十分之详细。

热点内容
水密码精华乳液怎么用 发布:2024-07-08 16:14:00 浏览:601
12mb智能缓存 发布:2024-07-08 16:06:19 浏览:658
安卓10如何显示ram 发布:2024-07-08 16:06:01 浏览:724
迈威哪个配置性价比高 发布:2024-07-08 16:00:07 浏览:520
编译原理在线题库 发布:2024-07-08 15:02:15 浏览:627
奇瑞瑞虎八plus豪享版配置有哪些 发布:2024-07-08 14:58:30 浏览:143
手机摄影内存配置哪个好 发布:2024-07-08 14:57:43 浏览:285
qq共享位置怎么修改位置安卓 发布:2024-07-08 14:51:59 浏览:642
生肖解压图 发布:2024-07-08 14:47:17 浏览:828
php当前时间秒 发布:2024-07-08 14:42:07 浏览:530