log4j数据库存储

来源:互联网 发布:项目管理软件 知乎 编辑:程序博客网 时间:2024/05/23 15:49

log4j日志存到数据库,本地文件

||
过滤器加log4j的properties文件

<span style="font-family:KaiTi_GB2312;font-size:18px;"> ### set log levels ###  log4j.rootLogger = debug,stdout,D,E,dblog4j.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 = [%-5p] %d{yyyy-MM-dd HH\:mm\:ss,SSS} method\:%l%n%m%n  log4j.appender.D = org.apache.log4j.DailyRollingFileAppender  log4j.appender.D.File = D\://log4j/log.log  log4j.appender.D.Append = true  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.E = org.apache.log4j.DailyRollingFileAppender  log4j.appender.E.File =D\://log4j/error.log   log4j.appender.E.Append = true  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########################   # JDBC Appender   #######################    #log4j.logger.business=INFO,db  #log4j.appender.db=com.neam.commons.MyJDBCAppender  log4j.appender.db=org.apache.log4j.jdbc.JDBCAppender  log4j.appender.db.BufferSize=10  log4j.appender.db.driver=com.mysql.jdbc.Driver                        log4j.appender.db.URL=jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=UTF-8  log4j.appender.db.user=root  log4j.appender.db.password=rootlog4j.appender.db.Threshold=DEBUG  log4j.appender.db.sql=insert into wdzlog (LogName,UserName,Class,Mothod,createTime,LogLevel,MSG) values ('%X{userId}','%X{userName}','%C','%M','%d{yyyy-MM-dd HH\:mm\:ss}','%p','%m')    log4j.appender.db.layout=org.apache.log4j.PatternLayout </span>

<span style="font-size:18px;">package logFilter;import java.io.IOException;import java.util.UUID;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;import javax.xml.registry.infomodel.User;import org.apache.log4j.MDC;public class LogFilter implements Filter {private final static String DEFAULT_USERID = UUID.randomUUID().toString().replace("-", "");public void destroy() {// TODO Auto-generated method stub}public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {HttpServletRequest req = (HttpServletRequest) request;HttpSession session = req.getSession();if (session == null) {MDC.put("userId", DEFAULT_USERID);} else {User customer = (User) session.getAttribute("user");if (customer == null) {MDC.put("userId", DEFAULT_USERID);MDC.put("userName", DEFAULT_USERID);} else {try {MDC.put("userId", customer.getName());MDC.put("userName", customer.getName());} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}// logger.info("test for MDC.");chain.doFilter(request, response);}public void init(FilterConfig arg0) throws ServletException {// TODO Auto-generated method stub}}</span>



                                             
0 0