Blog

rotatelogs 사용법

November 5, 2015

rotatelogs 사용법

링크 : https://httpd.apache.org/docs/2.2/ko/programs/rotatelogs.html

  • Apache와 함께 자동 설치
  • /usr/local/apache/bin/rotatelogs

 

사용법

rotatelogs [ -l ] logfile [ rotationtime [ offset ]] | [ filesizeM ]

 

실행 옵션

 

옵션
내용
-l GMT 대신 지역시간을 사용한다. (BST or DST)
logfile 로그파일의 경로, ‘%’ 가 있으면 strftime(3)의 형식 문자열로 처리, 없으면,초단위 시간 .nnnnnnnnnn을 자동으로 붙인다.
rotationtime 로그파일을 순환할 초단위 시간. 24시간=86400
offset UTC에서 분단위 시간차이. 생략하면 0으로 가정하여 UTC를 사용한다.  UTC -5 => -300
filesizeM 시간이 아닌 크기를 지정, 최대 파일크기 뒤에 M을 붙인다. rotationtime과 offset 대신 이 파라미터를 사용한다.

 

  • 파이프를 이용해서 아파치의 access, error 로그를 아파치가 직접 쓰지 않고 rotatelogs 가 수행한다.
  • Apache 는 서버가 시작할때 파이프로 연결된 rotatelogs 를 실행하고, 죽으면 다시 시작시킨다.
  • 파이프로 연결된 로그 프로세스(rotatelogs) 는 Apache httpd 부모 프로세스에서 실행하기 때문에 보통 root로 실행되고 해당 프로세스의 PPID 가 Apache httpd 부모 프로세스의 PID 이다.

 

사용의 예

 

ErrorLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/error-%Y-%m-%d.log 86400 +540"
TransferLog "|/usr/local/apache/bin/rotatelogs /usr/local/apache/logs/app/access-%Y-%m-%d.log 86400 +540"
  • 864000 = 24 시간에 대한 rotationtime(초단위)
  • +540 은 UTC에서의 시간차이(UTC+9 => 9 * 60= 540)

 

지시어

지시어
내용
%w 1-자리 요일수(주의 첫번째 날은 일요일)
%m 2-자리 달
%M 2-자리 분
%I(대문자 i) 2-자리 시간(12시간 시계)
%H “ 2-자리 시간(24시간 시계)
%y 2-자리 연도
%d 2-자리 일
%W 2-자리 주일수(주의 첫번째 날은 월요일)
%U 2-자리 주일수(주의 첫번째 날은 일요일)
%S 2-자리 초
%j 3-자리 날짜수
%Y 4-자리 연도
%b (지역화된) 3-문자 달 이름
%a (지역화된) 3-문자 요일 이름
%p (지역화된) 12시간 시계의 am/pm
%x (지역화된) 날짜
%c (지역화된) 날짜와 시간
%X (지역화된) 시간
%B (지역화된) 완전한 달 이름
%A (지역화된) 완전한 요일 이름
%% 문자그대로 `%’
%Z 시간대 이름

 

The post rotatelogs 사용법 appeared first on LAB84.