Presentation is loading. Please wait.

Presentation is loading. Please wait.

Bat 파일을 이용한 로그 파일 관리.

Similar presentations


Presentation on theme: "Bat 파일을 이용한 로그 파일 관리."— Presentation transcript:

1 bat 파일을 이용한 로그 파일 관리

2 기존 로그 환경 매일마다 로그가 쌓임(실제로는 stdout.log, gamis_error.log 등)
문제점 : 불필요한 오래된 로그파일 및 용량 차지 예)

3 문제 해결 방안 및 환경 해결 방안 일주일 단위로 압축 6개월 단위로 삭제 환경 Windows Server 2008에서 사용
Biz Server에서 각각 돌리는 것이 아니라 다른 프로그램 사용 배치 프로그램, 자바파일, vbscript 등 가능한 것으로 개발

4 bat 파일을 이용한 방법-1 bat 파일 와 Windows Server 2008의 작업 스케줄러을 이용한 방법
rem 로그파일이 있는 위치 set SRC1=d:\projects\GAMIS_WEB\log rem 저장될 위치 set TGT1=d:\projects rem 압축할 기간 set SETDAY=7 for /F "tokens=1-3 delims=/ " %%a in ('date /t') do SET DT=%%a%%b%%c if "%1"=="" ( for /F "tokens=1" %%a in ('date /t') do set orgdate=%%a ) else ( set orgdate=%1 ) BizServer 추가시 반복 작업 해야 할 것. -로그 파일 경로(SRC) -압축 파일 저장 위치 지정(TGT) set SRC = BizServer 로그 경로 set TGT = 압축 파일 저장 위치

5 bat 파일을 이용한 방법-2 :년월일 분리 set yy=%orgdate:~0,4% set yy2=%orgdate:~0,4% set mm=%orgdate:~5,2% set mm2=%orgdate:~5,2% set dd=%orgdate:~8,2% :월, 일의 숫자화 set /a mm=1%mm%-100 set /a mm2=1%mm2%-100 set /a dd=1%dd%-100 set /a dd=dd-%SETDAY% set /a TEMPSTR = %dd% set /a mm2=mm2-7 if %mm2% LEQ 0 set /a mm2=12%mm2%&&set /a yy2=yy2-1 if %dd% GTR 0 goto end :월 처리 set /a mm=mm-1 if %mm% LEQ 0 set mm=12&&set /a yy=yy-1

6 bat 파일을 이용한 방법-3 echo set sub= >sub.bat echo set /a dd=31-%%sub:~%mm%,1%% >>sub.bat call sub.bat :윤년처리 :4년주기 set /a u=yy %% 4 if not %u%==0 goto end :100년주기, 400년주기 set /a u=yy %% 400 set /a v=yy %% 100 if %v%==0 if not %u%==0 goto end :2월인지 체크 if %mm% EQU 2 set /a dd=dd+1 :end set mm=0%mm% set mm=%mm:~-2% set dd=0%dd% set dd=%dd:~-2% if %TEMPSTR% LSS 0 set /a dd=%dd%%TEMPSTR%

7 bat 파일을 이용한 방법-4 BizServer 추가시 반복 작업 해야 할 것. -로그 파일 경로 접근 (SRC)
set DT=%yy%%mm%%dd% for /f "tokens=1-4 delims=- " %%A in ('echo %DATE% ') do (set DT2=%%A%%B%%C) rem 폴더 위치로 접근(압축시 경로를 지정할 수 있으나 지정시 폴더까지 압축이 됨.) d: cd \ cd %SRC1% rem 압축 zip -r stdout.log.%DT%~%DT2%.zip stdout.log.*.log zip -r gamis_error.log.%DT%~%DT2%.zip gamis_error.*.log rem 로그 삭제 del %SRC1%\stdout.log.*.log del %SRC1%\gamis_error.log.*.log if %mm2% LSS 10 set mm2=0%mm2% rem 7개월이상 로그 삭제 del %SRC1%\stdout.log.%yy2%%mm2%*.zip del %SRC1%\gamis_error.log.%yy2%%mm2%*.zip BizServer 추가시 반복 작업 해야 할 것. -로그 파일 경로 접근 (SRC) -압축, 삭제, 압축파일 삭제(SRC)

8 bat 파일을 이용한 방법-5 - Windows Server 2008의 작업 스케줄러 클릭

9 bat 파일을 이용한 방법-6 명칭 설명 대상

10 bat 파일을 이용한 방법-7 클릭 설정

11 bat 파일을 이용한 방법-8 클릭 설정

12 차후 보안해야 할 것들 일주일 마다 bat파일을 실행 시 남아 있는 모든 log 파일을 압축하므로 처음 적용 시 기존에 있던 로그파일은 하나의 파일로 압축됨. 6개월 단위로 삭제하기 위해서 6개월의 정확한 일자를 구해야 하는데 구하기가 힘든 관계상 7개월 이상의 것들만 삭제되게 구현함.


Download ppt "Bat 파일을 이용한 로그 파일 관리."

Similar presentations


Ads by Google