JavaEE SSH框架整合(四) 日志处理Spring结合 log4j、slf4j
2016-02-16 13:59
615 查看
1. 加入log4j和slf4j的jar包
2. web.xml:
[html] view
plain copy
print?
<context-param>
<!--log4j配置地址 -->
<param-name>log4jConfigLocation</param-name>
<!-- <param-value>/WEB-INF/classes/log4j.properties</param-value> -->
<param-value>classpath:log4j.properties</param-value>
</context-param>
<context-param>
<!-- log4j 配置扫描刷新间隔 可以不用 -->
<param-name>log4jRefreshInterval</param-name>
<param-value>10000</param-value>
</context-param>
<!-- spring里的log4j配置监听器 -->
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
3. src/log4j.properties:
[plain] view
plain copy
print?
### set log levels ###
log4j.rootLogger = debug,stdout,D,E
### 输出到控制台 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.Threshold = INFO
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p %c{1}:%L - %m%n
log4j.appender.stdout.Encoding=UTF-8
### 输出到日志文件 ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ${ssh}WEB-INF/logs/debug.log
log4j.appender.D.file.MaxFileSize=500KB
log4j.appender.D.Append = true
##输出DEBUG级别以上的日志
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
log4j.appender.D.Encoding=UTF-8
### 保存异常信息到单独文件 ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
## 异常日志文件名
log4j.appender.E.File = ${ssh}WEB-INF/logs/error.log
log4j.appender.E.file.MaxFileSize=500KB
log4j.appender.E.Append = true
## 只输出ERROR级别以上的日志!!!
log4j.appender.E.Threshold = ERROR
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
log4j.appender.E.Encoding=UTF-8
配置info级输出到控制台,debug和error 都输出到对应文件中。
4. 使用log对象
[java] view
plain copy
print?
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.stone.action.DefaultAction;
public class LogUtil {
//使用slf4j创建日志对象,好处时,以后更换为其它日志工具时,只要修改配置文件,不用修改代码
private static Logger logger = LoggerFactory.getLogger(LogUtil.class);
//使用log4j创建日志对象
// private org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(getClass());
public static void error(String message) {
logger.error(message);
}
public static void debug(String message) {
logger.debug(message);
}
public static void info(String message) {
logger.info(message);
// org.apache.log4j.Logger.getLogger(LogUtil.class).info(message);
}
}
转载地址:http://blog.csdn.net/jjwwmlp456/article/details/44342989
[java] view
plain copy
print?
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.stone.action.DefaultAction;
public class LogUtil {
//使用slf4j创建日志对象,好处时,以后更换为其它日志工具时,只要修改配置文件,不用修改代码
private static Logger logger = LoggerFactory.getLogger(LogUtil.class);
//使用log4j创建日志对象
// private org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(getClass());
public static void error(String message) {
logger.error(message);
}
public static void debug(String message) {
logger.debug(message);
}
public static void info(String message) {
logger.info(message);
// org.apache.log4j.Logger.getLogger(LogUtil.class).info(message);
}
}
2. web.xml:
[html] view
plain copy
print?
<context-param>
<!--log4j配置地址 -->
<param-name>log4jConfigLocation</param-name>
<!-- <param-value>/WEB-INF/classes/log4j.properties</param-value> -->
<param-value>classpath:log4j.properties</param-value>
</context-param>
<context-param>
<!-- log4j 配置扫描刷新间隔 可以不用 -->
<param-name>log4jRefreshInterval</param-name>
<param-value>10000</param-value>
</context-param>
<!-- spring里的log4j配置监听器 -->
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
3. src/log4j.properties:
[plain] view
plain copy
print?
### set log levels ###
log4j.rootLogger = debug,stdout,D,E
### 输出到控制台 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.Threshold = INFO
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p %c{1}:%L - %m%n
log4j.appender.stdout.Encoding=UTF-8
### 输出到日志文件 ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ${ssh}WEB-INF/logs/debug.log
log4j.appender.D.file.MaxFileSize=500KB
log4j.appender.D.Append = true
##输出DEBUG级别以上的日志
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
log4j.appender.D.Encoding=UTF-8
### 保存异常信息到单独文件 ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
## 异常日志文件名
log4j.appender.E.File = ${ssh}WEB-INF/logs/error.log
log4j.appender.E.file.MaxFileSize=500KB
log4j.appender.E.Append = true
## 只输出ERROR级别以上的日志!!!
log4j.appender.E.Threshold = ERROR
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
log4j.appender.E.Encoding=UTF-8
配置info级输出到控制台,debug和error 都输出到对应文件中。
4. 使用log对象
[java] view
plain copy
print?
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.stone.action.DefaultAction;
public class LogUtil {
//使用slf4j创建日志对象,好处时,以后更换为其它日志工具时,只要修改配置文件,不用修改代码
private static Logger logger = LoggerFactory.getLogger(LogUtil.class);
//使用log4j创建日志对象
// private org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(getClass());
public static void error(String message) {
logger.error(message);
}
public static void debug(String message) {
logger.debug(message);
}
public static void info(String message) {
logger.info(message);
// org.apache.log4j.Logger.getLogger(LogUtil.class).info(message);
}
}
转载地址:http://blog.csdn.net/jjwwmlp456/article/details/44342989
[java] view
plain copy
print?
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.stone.action.DefaultAction;
public class LogUtil {
//使用slf4j创建日志对象,好处时,以后更换为其它日志工具时,只要修改配置文件,不用修改代码
private static Logger logger = LoggerFactory.getLogger(LogUtil.class);
//使用log4j创建日志对象
// private org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger(getClass());
public static void error(String message) {
logger.error(message);
}
public static void debug(String message) {
logger.debug(message);
}
public static void info(String message) {
logger.info(message);
// org.apache.log4j.Logger.getLogger(LogUtil.class).info(message);
}
}
相关文章推荐
- Jenkins和maven自动化构建java程序
- java判断字符串是否包含中文
- web工程引入Spring
- java基础总结(一)
- 在 Eclipse 中通过 SSH 密钥登录远程服务器
- 关于java的几个名词
- Eclipse开发工具的使用
- Thrift入门及Java实例演示
- 栈和队列的java实现
- SpringMVC访问静态资源
- java中的正则表达式
- 对象拷贝类
- 画柱状图Java
- JAXWS 开发webService ,使用spring注入service类时,无法注入,报空指针
- JAVA环境变量的搭建
- JPA criteria 查询:类型安全与面向对象
- Spring使用Cache
- Java描述贪心算法解决背包问题
- Spring Data JPA入门
- cast——java类型转换