[Linux] 로그 파일 관리_Logrotate
본문 바로가기
BackEnd/Linux

[Linux] 로그 파일 관리_Logrotate

by liveloper jay 2022. 1. 5.

 리눅스를 이용하여 서버를 실행 시킬 경우에 시간이 지남에 따라 로그가 계속해서 쌓이게 되고, 계속해서 쌓이게 되면 용량을 많이 차지하게 되어 문제가 발생합니다.

 

 따라서 서버를 실행시킬 경우에 로그 관리를 해주어야 하는데 이 때 사용하는 Logrotate에 대해 알아보겠습니다.

 

 

 

Logrotate

 Logrotate는 로그 파일을 일정 주기에 따라 압축하여 로그 파일을 백업해주는 역할을 하여, 수많은 로그를 분산 시켜주는 역할을 합니다. 아래는 Logrotate 사용 예시입니다.

 

# sudo vi /etc/logrotate.d 로 이동하여 rsyslog에 작성
 $ sudo vi /etc/logrotate.d/rsyslog
 /var/lib/docker/containers/*/*.log {
   rotate {num}
   daily
   compress
   size={size}
   missingok
   delaycompress
   copytruncate
 }

 

 1. rotate {num} : 로그 파일을 최대 몇개까지 저장할 것인지를 지정해줍니다.

 2. daily : 매일매일 로그를 rotate 시킵니다.

 3. compress : 이전 로그는 압축하여 저장합니다.

 4. size={size} : 파일의 크기가 size를 넘어갈 경우에 rotate 해주는 것을 의미합니다.

 5. missingok : 파일 내 로그가 없어도 rotate 해줍니다.

 6. delaycompress : 백업된 로그 중 재백업이 필요한 로그는 다시 압축하여 저장합니다.

 7. copytruncate : 복사본을 만들고 크기를 0으로 지정해줍니다.

 

 

 

 

 

로그를 관리하는 방법에는 Logrotate를 통하여 로그를 순환시켜주는 방법외에도 로그파일의 크기가 커질 경우 해당 directory로 이동하여 직접 로그를 삭제하여 주는 방법도 있습니다.

 

# 해당 디렉토리로 이동한 후 다음 명령어 입력하면 됨.
$ cat /dev/null > example.txt

# 위의 명령어가 동작하지 않을 경우 아래와 같이 입력
$ echo "" > example.txt

 

 


   

   
   
   
  

'BackEnd > Linux' 카테고리의 다른 글

[Linux] 프로세스(Process) 명령어  (0) 2022.02.26
[Linux] Ubuntu Postman 설치  (0) 2022.02.20
[Linux] Linux 디렉토리 구조  (0) 2022.02.09
[Linux] Ubuntu에 MySQL 설치  (0) 2022.01.07

댓글