IT 잡동사니

MongoDB logRotate (crontab or logRotate 적용)

케키키케 2024. 11. 15. 13:46

logRotate (crontab or logRotate 적용)

1.crontab
//crontab 실행
crontab -e  //export VISUAL=vim; crontab -e
 
//매일 23시 50분 사용자 시그널을 통해 신규 로그파일 생성하도록 설정 (로그 파일은 timestamp가 기록되며, UTC로 생성된다)
50 23 * * * /bin/kill -SIGUSR1 `ps -ef | grep mongod | grep -v grep | awk '{print $2}'` >> /home/test/mongodb/logs/logrotate.crontab.err 2>&1
 
//설정 조회
crontab -l
 
//cron 재실행
service cron restart
service cron status

2.3.5.2. logRotate 등록
/etc/logrotate.d/mongodb (logrotate는 cron.daily로 실행된다. /etc/cron.daily/logrotate)

등록 후, 적용되지 않는다면 sudo service cron restart

/home/test/mongodb/logs/mongo.log{
  daily
  rotate 14
  missingok
  dateext
  dateformat -%Y-%m-%d
  notifempty
  create 664 mongoadmin mongoadmin
  sharedscripts
  postrotate
   sudo /bin/kill -SIGUSR1 `ps -ef | grep mongod | grep -v grep | awk '{print $2}'`
  endscript
}