2013-02-26 6 views
5

정상적인 logrotate.d 구성 파일에는 잠재적 인 로그를 무제한으로 설정할 수있는 방법이 있습니까?logrotate가있는 무제한 로그

내가 만날 수있는 유일한 사실은 결코 만날 수없는 미친 숫자로 설정하는 것입니다. 뭔가는 다음과 같습니다 :

/var/log/app/* { 
    missingok 
    weekly 
    copytruncate 
    rotate 10000000000 
    compress 
    notifempty 
    olddir /var/log/app/old 
} 

그러나 그것은 꽤 나에게 해독 것 같습니다. UNIX logrotate man page에서

+0

흥미로운 질문입니다. 나는'rotate 0' 만 현재 로그를 유지한다는 것을 상기하는 것 같다. '-1 회전 '을 시도 했습니까? 아니면 완전히 생략하셨습니까? –

+0

당신은 이미 솔루션을 발견 했으므로 교차 손가락을 허용하고 logrotate가 회전 값을 저장하기 위해 64 비트 정수를 사용한다고 가정합니다. – ypnos

답변

3

:

회전 수

로그 파일이 제거 또는 메일 지시어에 지정된 주소로 발송되기 전에 회전 시간이다. 카운트가 0이면 이전 버전은 회전되지 않고 이 제거됩니다.

그래서 나는 엄청난 숫자를 써야한다고 생각합니다.

+0

죄송합니다. 먼저 맨페이지를 확인 했어야합니다. 그것은 아무 말도하지 않았지만 누군가가 더 좋은 생각을 갖고 있는지 궁금해하고있었습니다. 언젠가는 그 엄청난 숫자를 만날 수 있습니다 :) 내가 생각하기에 하나의 아이디어는 특정 카운트에이를 때/old/old 폴더로 로그를 이동하는 cron 작업 일 수 있습니다. – stewbert

+0

OK! 그래서 나는 man 페이지를 다시 점검했다 :) 글쎄, 나는 이것이 좋은 생각이라고 생각한다. 이 스크립트는 dir에있는 파일 수를 검사 할 수 있습니다. if [$ (ls -1/dir | wc -l) -ge $ BIG_NUMBER]; 다음 bla bla bla'. 나는 모든 로그 파일을 함께 저장하는 것이 좋지 않다고 생각한다. 정보가 필요하다면 파일 시스템에 문제가 생기면 다른 장소에 저장하여 복구 할 수 있습니다. 필요에 따라 백업에서 복구 할 수 있도록 때때로 전체 백업은 어떻게됩니까? – fedorqui

+0

그것은 물론 최종 계획입니다. 이것은 실제 문제 (놀라운 속도로 로그를 생성하는 응용 프로그램)에 대한 붕괴 (bandaid)에 더 가깝습니다. 실제 응용 프로그램 소유자에게는 "실제"솔루션을 구현할 때까지 사용할 수있는 "무제한"설정으로 밤에 더 잘 수면 상태가된다는 것을 알았습니다 (응용 프로그램이 너무 많은 저주 로그를 생성하는 것을 막을 수 있습니다!) 지금 당장은 10 분에서 15 분 간격으로 20MB 로그를 돌릴 수 있습니다 ...) 감사! 내가 대답 해 줄게. – stewbert