log4j配置好后,日志不能够输出到数据库中,求指教

资源文件中的内容如下:

[code="java"]
log4j.properties

log4j.rootLogger=INFO,stdout

log4j.logger.org.springframework.web.servlet=INFO,db

log4j.logger.org.springframework.beans.factory.xml=INFO

log4j.logger.com.neam.stum.user=INFO,db

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} %p [%c] - - <%m>%n

log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender

log4j.appender.logfile.File=${webapp.root}/WEB-INF/logs/exppower.log

log4j.appender.logfile.DatePattern=.yyyy-MM-dd

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

log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] wang- <%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.sqlname=log

log4j.appender.db.driver=com.mysql.jdbc.Driver
log4j.appender.db.URL=jdbc:mysql://172.20.92.139:3306/test?characterEncoding=UTF-8

log4j.appender.db.user=root

log4j.appender.db.password=123456

log4j.appender.db.sql=insert into log(username,class,methodname,createtime,logLevel,msg) values ('%X{username}','%C','%M','%d{yyyy-MM-dd HH:mm:ss}','%p','%m')

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

[/code]

运行时的测试类如下:

[code="java"]

import java.net.URL;

import org.apache.log4j.Logger;
import org.apache.log4j.MDC;
import org.apache.log4j.PropertyConfigurator;

public class TestClass {

public static void main(String[] args) {
    URL url = TestClass.class.getClassLoader().getResource("log4j.properties");
    MDC.put("username", "username");

    PropertyConfigurator.configure(url.getPath());
    Logger logger  =  Logger.getLogger(TestClass.class);
    logger.debug( " debug " );
    logger.error( " error " );
    logger.info(" info ");
}

}


jeck猫
浏览 868回答 2
2回答

阿晨1998

Logger logger = Logger.getLogger(TestClass.class);需要定义log4j.logger.TestClass=INFO,db
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java