요즘 웹서버나 DB서버에 로그파일이 쌓여 임계치 초과가 자주 발생되더라구요..
서버는 aix 서버이구요..
로그파일이 쌓여서 파일시스템 용량이 초과되는 경우,
실시간으로 용량이 늘어나는 로그파일 검색 및 체크하는 방법과 파일을 삭제하는 절차좀 알려주시면
감사하겠습니다..
요즘 웹서버나 DB서버에 로그파일이 쌓여 임계치 초과가 자주 발생되더라구요..
서버는 aix 서버이구요..
로그파일이 쌓여서 파일시스템 용량이 초과되는 경우,
실시간으로 용량이 늘어나는 로그파일 검색 및 체크하는 방법과 파일을 삭제하는 절차좀 알려주시면
감사하겠습니다..
6개의 답변이 있습니다.
logrotate를 활용한 로그 관리
를 참고해 보시면 좋을듯 합니다.
#!/bin/bash
cd
/var/logs
find
./*.log -ctime +3 -
exec
rm
-f {} \;
3일 지난 파일을 지워라2.crontab 으로 새벽 3시쯤 설정하면 됩니다.
ex ) * 4 * * * sh /root/sbin/ 해당 스크립트명. sh
서버 모니터링툴에서 임계치(90%?) 설정하면 메일링 오는 시스템이 있습니다
한번 알아보세요
어느 정도의 기간 쌓인 로그가 파일 시스템에 가득 찰 정도인지는 잘 모르겠지만...
로그가 쌓이는 파일 시스템의 용량이 너무 적게 설정되어 있는게 아닌가 하는 생각이 드는데요.
가급적이면 로그가 쌓이는 경로의 파일시스템 공간을 더 큰 사이즈로 변경하는 걸 검토해 볼 필요가 있을 것 같고요.
충분한 기간 이상이 경과한 로그는 자동적으로 제거되도록 스크립트를 만들어 두는게 좋겠고요.
그냥 제거하기엔 뭔가 불안하다면 제거 스크립트에 압축/백업 받는 명령도 추가해서 별도의 공간에 백업 받아 둔 후에 제거되게 해 두는 게 좋을 것 같고요.
유닉스에서 일정 시간 경과한 file을 검색해서 제거할때 find 에 -mtime -exec 등의 옵션을 붙여서 명령을 사용하면 기본 내장된 명령으로도 어렵지 않게 처리할 수 있겠고요.
백업 받을때도 제거할때와 같이 find 명령을 유사하게 사용하면 되겠고요.
파일 시스템의 용량을 늘리지 않고도 디스크 풀 차지 않게 하려면 보존하는 로그 파일의 기간을 가급적 짧게 설정하면 되겠고요.
로그 파일의 보존기한을 먼저 확인하시고..
보존기한이 지난 로그 파일은 과감하게 삭제하거나 다른 저장매체로 옮길 수 있도록 쉡스크립트를 작성해보세요..
제가 사용 했던 방법 입니다.
전일자에 생성된 로그파일을 압축하는 쉘 스크립트를 만들어서 매일 1회씩 실행 했습니다.
생성된 압축파일은 주기적으로 백업 디렉토리로 옮기도록 합니다.
위와 같은 방법으로 하여 디렉토리 공간을 확보 하였습니다.