사실 잘 작동하는지 확인 안했다. 실패하면 글 삭 ㄱ
문제
Almalinux 8.7에서는 logrotate가 잘 됐는데 9.3으로 업데이트를 한 뒤로 안되기 시작했다.
Nginx, 앱 로그 용량이 늘어나면 시스템에 좋지 않기때문에 조치를 취해보자.
(Docker에서 실행하는 컨테이기때문에 서비스 재 배포를 통해 해결할 수 있지만..)
아마도 RHEL계열 9.x minimal 버젼에서는 거의 대부분 발생할 문제라고 생각한다.
해결
온갖 삽질을 다 했는데.. 무슨 이유 때문인지 9.x에서 /etc/cron.daily/logrotate
스크립트가 누락되어있다. (5252 어디까지 minimal 할 셈이냐?!)
#!/bin/sh
/usr/sbin/logrotate /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit $EXITVALUE
위 스크립트 내용을을 /etc/cron.daily/logrotate
파일에 넣어주고 실행 권한($ chmod +x /etc/cron.daily/logrotate
)을 주면된다. 내부적으로 anacron에서 run-parts를 통해 실행하기때문에 실행 권한이 꼭 있어야 되는것 같다.
만약 Dockerfile을 이용한다면 아래 명령어를 추가한다.
RUN echo $'#!/bin/sh\n\
/usr/sbin/logrotate /etc/logrotate.conf\n\
EXITVALUE=$?\n\
if [ $EXITVALUE != 0 ]; then\n\
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"\n\
fi\n\
exit $EXITVALUE' > /etc/cron.daily/logrotate
RUN chmod 755 /etc/cron.daily/logrotate
'개발 > Linux,Server' 카테고리의 다른 글
광명찾는 Intellij vmoption 설정 값 (2) | 2024.06.24 |
---|---|
Nginx logrotate후에 로깅이 안되는 문제 (Nginx not logging after logrotate) (0) | 2022.04.27 |
맥에서 zip 압축해제 오류 (오류 22 - 유효하지 않은 변수, Illegal byte sequence) (0) | 2020.04.01 |
우아한 Redis - 강대명 (0) | 2019.11.21 |
Nginx에서 upstream서버 keealive 설정 (3) | 2019.04.30 |