티스토리 뷰
로그 파일은 특정 프로그램이 실행되면서 발생한 오류나 기록들이 저장되어있는 파일인데요.
로그파일을 통해 히스토리 파악, 오류파악 등이 가능하기 때문에 가능하면 보관을 하는 편인데요.
대부분 텍스트 파일 형태로 보관을 하지만, 별도 요청이 없는 한 저장만 하고 있죠.
AWS의 S3 같은 경우는 스토리지 비용이 싸니 별 문제는 안되겠지만, 일반 서버나 EC2 인스턴스 환경에서 서버상에 보관할때는 용량이 조금 부담스러울 수 있는데요.
# gzip 압축
gzip 20241201.log
# 2024로 시작해서 .log로 끝나는 파일 모두 압축
gzip 2024*.log
# gz 압축된 파일 압축 풀기
# gzip -d 20241201.log.gz
이럴땐 gzip 명령어를 이용해서 gz파일로 압축하여 사용할 수 있습니다.
다만 gz 압축 시 CPU 사용량이 올라가기 때문에 실제 서비스중인 서버에서 실행하게 된다면 모니터링이 필요할 수도 있습니다.
약 1/10 크기로 줄어드는데요.
그럼에도 불구하고 이런 파일들이 늘어나게 된다면 압축만으로는 버거울 수 있습니다.
그럴 경우에는 삭제가 필요하겠죠?
저희는 로그 저장 정책을 내부적으로 6개월로 정해놨어요.
그럼 180일 이상 지난 로그는 알아서 삭제되도록 crontab에 지정해줍니다.
##### 180 days ago log files clean up
0 1 * * * find /var/log/application/ -type f -mtime +180 -exec rm -f {} \;
크론탭이란 정해놓은 시간별로 특정 명령어를 실행하도록 지정해두는거에요.
복잡한 명령이 필요하면 쉘파일을 만들어서 그 쉘파일을 실행하는 명령어를 등록할 수 있겠죠?
(분 0~59 ) (시 0~23) (일 1~31) (월 1~12) (요일 0~7) 순으로 지정이 가능하구요.
여기서 요일의 경우 0과 7은 일요일, 1~6까지는 각각 월~금 입니다.
각각의 시간에는 특수문자를 이용할 수 있는데요.
* : 전부
, : 여러개 지정 시
- : 범위 지정 시
/ : 시간 계산
예시로 보여 드린다면 아래와 같습니다.
# /home/sopor/test.sh 을 매일 매시간 매분마다 실행
* * * * * /home/sopor/test.sh
# /home/sopor/test.sh 을 매주 월요일 0시에 실행
0 0 * * 1 /home/sopor/test.sh
# /home/sopor/test.sh 을 매월 1일 3시부터 5시까지 15분마다 실행
*/15 3-5 1 * * /home/sopor/test.sh
# /home/sopor/test.sh 을 매일 9시, 11시, 15시, 18시 0분에 실행
0 9,11,15,18 * * * /home/sopor/test.sh
'IT > server' 카테고리의 다른 글
| [docker] docker 컨테이너에서 cron 유사하게 실행하기 (0) | 2025.07.16 |
|---|---|
| [Linux] 서버 상태 관리 알람 만들기 (저장 공간 편) (9) | 2025.02.09 |
| [Linux] alpine linux date 날짜 계산 (8) | 2025.02.06 |
| [Sphinxsearch] 스핑크스 검색 엔진 설치 및 실행 (6) | 2025.01.06 |
- Total
- Today
- Yesterday
- 유효성검사
- 아이피
- screenshot
- 정규식
- sh
- MobaXterm
- alram
- cron
- docker
- sftp
- php
- Linux
- sphinxsearch
- Windows
- Throttle
- shellscript
- alpine
- 0308010c
- nodeJS
- RHEL
- Rocky
- javascript
- debounce
- cocoapods
- Canvas
- flutter
- SCOOP
- GIT
- MAC
- React
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
