[펌] Log4j - DailyRollingAppender 문제

2008/06/02 10:48 게시판/Computer
Log4j의 DailyRollingAppender를 다중 인스턴스 환경에서 사용할 때 파일의 전환이 제대로 이루어지지 않고 로그가 유실되는 등의 문제가 있다.  이것은 소스코드 자체의 문제로서 DailyRollingAppender의 파일 전환 부분을 다음과 같이 수정하면 해결할 수 있다.

  // append flag
        boolean appendFlag = false;
       
        // 이미 파일 전환이 이루어졌다면 rename 하지 않게 처리
        if ( !target.exists() ) {
            File file = new File( fileName );
            boolean result = file.renameTo( target );
            if ( result ) {
                LogLog.debug( fileName + " -> " + scheduledFilename );
            }
            else {
                LogLog.error( "Failed to rename [" + fileName + "] to [" + scheduledFilename + "]." );
            }
        } else {
            // 이미 파일전환이 되었다면 추가모드
            appendFlag = true;
        }         try {
            // This will also close the file. This is OK since multiple
            // close operations are safe.
            this.setFile( fileName, appendFlag, this.bufferedIO, this.bufferSize );
        }
        catch ( IOException e ) {
            errorHandler.error( "setFile(" + fileName + ", false) call failed." );
        }

현재 이 내용은 버그리포트에도 올라와 있고 1.3에서는 해결이 된다고 하는데 release가 계속 늦어지고 있는 모양이다.  그 때까지는 아래 파일을 다운로드 하고 DailyRollingAppender 대신에 ExtDailyRollingAppender 를 지정한 후 같은 방식으로 사용하면 된다.

-------------------------------------------------------------------------------------------

내용중 ExtDailyRollingAppender는 ExtDailyRollingFileAppender로 변경해야 한다.

내가 처했던 문제는 하루가 지나 로그가 다시 생성이 될 경우 여러 프로그램이 하나의 로그파일로 공유를 할때 로그가 유실되는.. ( 어느 프로그램은 로그를 남기고 나머지 프로그램이 로그를 작성하지 못하는) 경우 였다. ERROR Failed to rename XXX to XXX 이렇게 되는 경우 일것이다.
출처 : http://riosung.tistory.com/7



"Computer" 카테고리의 다른 글
  · 자바스크립트 속성  2007/07/01
  · vi 방향키, 백스페이스등 먹게 설정  2007/07/21
  · WisBar Advance Sking : CrystalKDE2  2006/08/17
  · 차계부 관리 프로그램 NCar  2006/09/19
  · @세대 [At Generation]  2007/06/25
  · 분류는 안되??  2008/01/26
  · 특정일 지난 로그파일 지우기  2007/12/31
  · [태터툴즈 플러그인] AdSenseOnEntry  2007/01/24
  · 유용한 무료 프로그램들  2007/05/04
  · ThinkPad R52 공장 초기화하기  2007/05/04
2008/06/02 10:48 2008/06/02 10:48

특정일 지난 로그파일 지우기

2007/12/31 10:29 게시판/Computer
사용자 삽입 이미지
리눅스에서...
3일지난 로그파일 지우기

find . -name "*.log"  -mtime +3 -exec rm {} \;




"Computer" 카테고리의 다른 글
  · 자바스크립트 속성  2007/07/01
  · vi 방향키, 백스페이스등 먹게 설정  2007/07/21
  · WisBar Advance Sking : CrystalKDE2  2006/08/17
  · 차계부 관리 프로그램 NCar  2006/09/19
  · @세대 [At Generation]  2007/06/25
  · 분류는 안되??  2008/01/26
  · 특정일 지난 로그파일 지우기  2007/12/31
  · [태터툴즈 플러그인] AdSenseOnEntry  2007/01/24
  · 유용한 무료 프로그램들  2007/05/04
  · ThinkPad R52 공장 초기화하기  2007/05/04
2007/12/31 10:29 2007/12/31 10:29

쉘에서 날짜로된 파일 만들기

2007/11/19 18:22 게시판/Computer
프로그램을 만들다가 시스템로그는 찍는데 로그를 미처 구현하지 못했을 경우 리눅스 상에서 로그파일로 떨구고 싶을때는 쉘 스크립트를 이용하면 간편하게 로그파일을 만들 수 있다.

이때 한파일로 로그를 만들기 보다는 실행된 날짜로 떨굴필요가 있는데 이럴때는 아래 구문을 적절히 적용하면 될것이다.

#!/bash/sh
java -cp "classpath" dmi.client.Program >> ./clientLog_`date +%y%m%d%H%M%S`.log






"Computer" 카테고리의 다른 글
  · 자바스크립트 속성  2007/07/01
  · vi 방향키, 백스페이스등 먹게 설정  2007/07/21
  · WisBar Advance Sking : CrystalKDE2  2006/08/17
  · 차계부 관리 프로그램 NCar  2006/09/19
  · @세대 [At Generation]  2007/06/25
  · 분류는 안되??  2008/01/26
  · 특정일 지난 로그파일 지우기  2007/12/31
  · [태터툴즈 플러그인] AdSenseOnEntry  2007/01/24
  · 유용한 무료 프로그램들  2007/05/04
  · ThinkPad R52 공장 초기화하기  2007/05/04
2007/11/19 18:22 2007/11/19 18:22

[펌] 배치파일에서 날짜와 시간으로 디렉토리를 생성하는 방법?

2007/11/16 11:11 게시판/Computer
배포용으로 프로그램을 만들던중 리눅스용과 윈도우용으로 간편하게 프로그램을 실행하기 위해 스크립트를 만드는데...

리눅스 sh는 익숙한데;; 윈도우 bat은 낯설은지라.. 참고로 올려본다..

@echo off
setlocal
; %date%에서 모든 하이픈(-)을 지워 버림
set date2=%date:-=%
; %time%에서 모든 공백을 0으로 고침 (시각 부분이 zerofill된 게 아니라 그냥 right justify 되어 있어서...)
set time2=%time: =0%
; %time2%의 시각 부분과 분 부분만 잘라 냄
set time3=%time2:~0,2%%time2:~3,2%
; 이제 두 변수를 이어 붙여서 디렉토리를 만들면 땡!
mkdir %date2%_%time3%
endlocal
echo on

출처 : http://kldp.org/node/58297


"Computer" 카테고리의 다른 글
  · 자바스크립트 속성  2007/07/01
  · vi 방향키, 백스페이스등 먹게 설정  2007/07/21
  · WisBar Advance Sking : CrystalKDE2  2006/08/17
  · 차계부 관리 프로그램 NCar  2006/09/19
  · @세대 [At Generation]  2007/06/25
  · 분류는 안되??  2008/01/26
  · 특정일 지난 로그파일 지우기  2007/12/31
  · [태터툴즈 플러그인] AdSenseOnEntry  2007/01/24
  · 유용한 무료 프로그램들  2007/05/04
  · ThinkPad R52 공장 초기화하기  2007/05/04
2007/11/16 11:11 2007/11/16 11:11