2010-12-23 5 views
3

저는 현재 자바 스윙 애플리케이션을 구현했습니다. 이 애플리케이션에서는 java.util.logging을 사용하여 텍스트 파일에 로그를 남겼습니다. 그러나 파일이 매우 크기 때문에 텍스트 파일을 읽는 것은 어렵습니다.오라클 데이터베이스에 로깅 정보 저장

오라클 데이터베이스 (응용 프로그램에 사용하고있는 정보)에 로깅 정보를 저장하고 스윙 인터페이스를 제공하여 해당 테이블에 액세스하려고합니다. 그래서 나는 INFO와 SEVERE와 같은 특정 로깅 레벨에 대한 테이블을 검색 할 수있을 것입니다. java util 패키지를 사용하거나 Log4j를 사용하는 방법이 있습니까? Pls help

답변

7

는 이러한 펜더를 살펴 보자.

0

org.apache.log4j.AppenderSkeleton을 확장하여 자신의 Appender를 작성할 수 있습니다. 당신은 여러 데이터 저장소를 위해 그를 구성하고 당신이 등 라인 번호, 클래스 이름, 메시지 로거 심각도로 구분 정보를 얻을 수있는 곳 LoggingEvent

public class StorageBasedAppender 
    extends AppenderSkeleton 
{ 
    [...] 

    @Override 
    protected void append(LoggingEvent event) 
    { 
     // Write to your database or other storages 
    } 
} 

당신은 향상시킬 수있는 분할하는 방법을 정의 할 수 있습니다 이 클래스는 구성 가능 등으로 만듭니다. 특정 질문이 필요하지 않은 경우 JDBCAppenderConfiguration을 사용하십시오. org.apache.log4j.jdbc.JDBCAppender 또는 개선 된 버전 org.apache.log4j.jdbcplus.JDBCAppender : 쉽게 구성 할 수있는

<appender name="jdbcAppender" class="org.apache.log4j.jdbc.JDBCAppender"> 
    <param name="URL" value="jdbc:oracle:thin:@sd1.hbs.edu:1521:sc1" /> 
    <param name="Driver" value="oracle.jdbc.driver.OracleDriver" /> 
    <param name="User" value="user" /> 
    <param name="Password" value="password" /> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" 
      value="INSERT INTO LOGGING_SAMPLES_TEST 
      (log_date, log_level, location, message) 
      VALUES ('%d{ISO8601}','%p', '%C;%L', '%m')" 
     /> 
    </layout> 
</appender> 
0

JDBC Log4j Appender를 사용할 수 있습니다.

체크 아웃 Tutorialspoint 또는

당신은 .properties 파일 또는 .xml을 사용 그에 따라인지 구성을 변경해야 할 수도 있습니다 Apache Wiki.