您的位置:首页 > 其它

在项目中添加日志,Log4j,相关配置

2016-05-25 10:43 369 查看
一,首先导入相关jar包:log4j-1.2.16.jar,slf4j-log4j12-1.7.2.jar。

hibernate 3.x版本 默认采用日志技术 slf4j (即简单日志门面(SimpleLoggingFacadeforJava)) ,不是具体的日志解决方案,它只服务于各种各样的日志系统。

* 使用slf4j 好处,很容易整合其他日志技术

企业java开发 最主流日志技术 log4j

slf4j-api-1.6.1.jar 没有日志实现,只是接口,整合log4j

导入 slf4j-log4j12-1.7.2.jar (slf4j对log4j 框架整合 )

导入 log4j-1.2.16.jar (log4j的日志jar包 )

二、配置log4j.properties

### 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{ABSOLUTE} %5p %c{1}:%L - %m%n

### direct messages to file mylog.log ###

###设置输出源为日志文件输出###

log4j.appender.file=org.apache.log4j.FileAppender

log4j.appender.file.File=c\:mylog.log

### 布局在日志文件中记录那些信息 ###

log4j.appender.file.layout=org.apache.log4j.PatternLayout

log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

### set log levels - for more verbose logging change 'info' to 'debug' ###

log4j.rootLogger=info, stdout , file


三、以上就算完成了,然后就是写一个测试类,来测试

import org.apache.log4j.Logger;

/**
* 使用log4j 记录日志
*
* @author seawind
*
*/
public class Log4jTest {
// 步骤一 定义记录器 (通常是常量)
private static final Logger LOG = Logger.getLogger(Log4jTest.class);

public static void main(String[] args) {
// 步骤二 记录日志
LOG.fatal("致命错误");
LOG.error("普通错误");
LOG.warn("警告信息");
LOG.info("普通信息");
LOG.debug("调试信息");
LOG.trace("堆栈信息");
}
}


使用log4j 通过配置文件 ,配置日志框架使用

src/log4j.xml

src/log4j.properties (简单)

配置log4j.properties 有三个组件

组件一: 记录器(Loggers) 用来配置日志输出级别,使用哪些输出源 格式: 记录器名 = 级别, 输出源1 , 输出源2 ...

* 一个记录器 指定 多个输出源

log4j.rootLogger=info, stdout info是日志级别 , stdout是输出源名称

* log4j提供日志级别 由高到低 :fatal(致命错误), error(普通错误), warn(警告),info(信息), debug(调试), trace(堆栈 )

* log4j记录日志时,只会记录 配置级别更高级别的信息

组件二 : 输出源(Appenders) 在log4j中可以定义多个输出源 (控制台、日志文件、邮件、数据库 )

* log4j.appender.输出源名称 = 实现类

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 向控制台输出

log4j.appender.file=org.apache.log4j.FileAppender 向文件输出

组件三 : 布局(Layouts) 在日志中都记录哪些信息

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 自定义布局

log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 自定义布局格式

3)、 在程序中使用log4j 记录日志

步骤一 :定义记录器

private static final Logger LOG = Logger.getLogger(Log4jTest.class);

步骤二 :使用 log4j提供每个级别方法 记录日志

LOG.fatal("致命错误");

LOG.error("普通错误");

LOG.warn("警告信息");

LOG.info("普通信息");

LOG.debug("调试信息");

LOG.trace("堆栈信息");

* 常用 : error、warn、info、debug
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: