logrotation이 잘못된 로그 파일을 압축하고 있습니다.

logrotation이 잘못된 로그 파일을 압축하고 있습니다.

가상 머신에서 다음 로그 회전을 활성화했지만 로그가 잘못된 형식으로 gzip으로 압축되었습니다.

로그 회전

/logs/springboot/*.log*
{

    missingok
    minsize 100M
    copytruncate
    notifempty
    sharedscripts
    compress
    rotate 5
    postrotate
    endscript
}

0바이트를 사용하여 로그를 gzip하는 방법은 다음과 같습니다.

-rw------- 1 message message  Aug 12 19:45 message.2021-08-01.6.log.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz
-rw------- 1 message message  Aug 12 19:45 message.2021-08-01.7.log.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz
-rw------- 1 message message  Aug 12 19:45 message.2021-08-01.8.log.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz
-rw------- 1 message message  Aug 12 19:45 message.2021-08-01.9.log.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz

이런 문제가 발생하는 이유가 있나요? 이 cron 작업으로 인해 다음 오류가 발생하여 실패했습니다. 디버그 모드를 사용하여 로그 회전을 실행하려고 하는데 아래는 중지 절차입니다.

**compressing log with: /bin/gzip**
removing old log /logs/springboot/message.2021-07-26.0.log.1.gz.1.1.1.1.1.1.gz.1.gz.1.1.1.1.1.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.1.1.1.1.1.gz.1.gz.1.1.1.1.1.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.1.1.1.1.1.gz.1.gz.1.1.1.1.1.1.gz.6.gz
error: error opening /logs/springboot/message.2021-07-26.0.log.1.gz.1.1.1.1.1.1.gz.1.gz.1.1.1.1.1.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.1.1.1.1.1.gz.1.gz.1.1.1.1.1.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.gz.1.1.1.1.1.1.gz.1.gz.1.1.1.1.1.1.gz.6.gz: **File name too long**

답변1

패턴은 /logs/springboot/*.log*회전하려는 로그 파일뿐만 아니라 회전 중인 로그와도 일치합니다.

따라서 다음 두 파일 이름과 일치합니다.

  • message.2021-08-01.6.log
  • message.2021-08-01.6.log.1.gz

이는 이미 회전되고 압축된 파일을 회전하기 시작하여 .1.gz매번 추가한다는 의미입니다.

회전된 로그 파일이 일치하지 않도록 패턴을 더 제한적으로 만드세요. 예를 들어, . 이상만 /logs/springboot/*.log일치시키 려면 로그 파일에도 정적 파일 이름 접두사가 있다는 것을 알고 있으므로 ..log/logs/springboot/message.*.log

관련 정보