이는 다음과 관련이 있습니다.logrotate는 catalina.out을 자를 수 없습니다.중복 질문이 매우 다른 솔루션으로 미묘하게 다른 문제를 설명하더라도 중복으로 잘못 종료되었습니다.
질문(간결함을 위해 관련 부분으로 축약됨):
다음 logrotate 구성을 사용하면 로그가 회전하지만 catalina.out이 잘리지 않는 이유는 무엇입니까? (이것은 회전이 전혀 발생하지 않는 중복으로 연결된 질문의 동작과 다릅니다.)
/log/apache-tomcat/catalina.out{
copytruncate
daily
size 256M
rotate 8
missingok
maxage 7
}
logrotate -v 모든 작업에서 로그 파일이 복사, 압축 및 잘리고 있는지 확인합니다.
답변1
이는 catalina.out 파일이 일반적으로 루트에 속하지 않고 tomcat:tomcat과 같은 사용자에게 속하기 때문에 발생합니다.
> ls -lah /log/apache-tomcat/catalina.out
-rw-r--r-- 1 tomcat tomcat 105K Nov 4 13:48 catalina.out
이 문제를 해결하려면 logrotate 구성에 "su tomcat tomcat" 행을 추가해야 합니다.
/log/apache-tomcat/catalina.out{
su tomcat tomcat
copytruncate
daily
size 256M
rotate 8
missingok
maxage 7
}
그런데 매일 항목이 있고 크기가 256M인 것은 모순입니다. 매일 회전하거나 로그 파일이 지정된 크기에 도달할 때 회전하지만 둘 다 수행할 수는 없습니다.