2
log4j로 시작한 지 오래되었습니다. 꽤 멋진 로깅 프레임 워크. 콘솔 및 파일 로깅과 같은 다른 유형의 로깅을 수행했습니다. 데이터베이스 로깅을 위해 mysql을 사용하는 DB 어댑터를 시도합니다. 따라서, 나는 재산 파일 log4j.properties라는 이름의 다음 만든 -mysql 데이터베이스에 저장할 log4j 등록 정보 파일 구성
# Define the root logger with appender file
log4j.rootLogger = DEBUG, DB
# Define the DB appender
log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender
# Set JDBC URL
log4j.appender.DB.URL=jdbc:mysql://localhost:3306/test
# Set Database Driver
log4j.appender.DB.driver=com.mysql.jdbc.Driver
# Set database user name and password
log4j.appender.DB.user=root
log4j.appender.DB.password=
# Set the SQL statement to be executed.
log4j.appender.DB.sql=insert into log(date,level,message) values("%d","%p","%m")
# Define the layout for file appender
log4j.appender.DB.layout=org.apache.log4j.PatternLayout
그리고 방법으로 다음 테스트 클래스에서 사용 -
public class DBLoggerTest {
static Logger logger;
public DBLoggerTest() {
//System.setProperty("log4j.configuration", "log4j.properties");
logger = Logger.getLogger(DBLoggerTest.class.getName());
}
public static void main(String[] args) {
new DBLoggerTest();
logger.info("This is a test info");
logger.error("This is an error messsage");
}
}
그러나 나는 다음과 같은 오류 있어요 -
log4j:WARN No appenders could be found for logger (com.satyam.logger.test.DBLoggerTest).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
을
도움주세요 ...?
더 많은 정보를 원하시면 http://logging.apache.org/log4j/1.2/faq.html#noconfig를 참조하십시오. log4j.properties가 클래스 경로의 루트에 있습니까? Thread.getContextClassLoader(). getResource ("log4j.properties")는 무엇을 반환합니까? –
도움말 링크를 확인했습니다. 도움이되지 않았다. 또한 파일의 이름이 동일하기 때문에 log4j.properties를 설정했습니다. 또한, 나는 시스템 매개 변수를 설정하려고했습니다. 여전히 같은 오류. – Neo182