クイズ: 保存期間とローテーション
한국어 원문으로 표시합니다.
daily 로 회전하면서 30일치를 남기고 싶다. logrotate 설정의 rotate 에 적을 숫자는?
- 30 — 남길 일수를 그대로 적는다
- 29 — rotate 는 지금 쓰는 파일을 뺀 보관 개수다
- 31 — 압축 지연 때문에 하루를 더 잡아야 한다
- 0 — daily 와 함께 쓰면 주기가 개수를 정한다
한 서버의 /var/log 에 app.log.1 과 app.log-20260408.gz 가 함께 있다. 두 이름 규칙의 시간 방향은?
- 둘 다 이름이 클수록 최근이다
- 둘 다 이름이 클수록 과거다
- 번호는 숫자가 클수록 과거이고, 날짜 이름은 이름이 클수록 최근이다
- 번호는 숫자가 클수록 최근이고, 날짜 이름은 이름이 클수록 과거다
copytruncate 로 회전하는 설정을 조사 중에 발견했다. 매뉴얼이 명시한 이 옵션의 대가는?
- 복사와 비우기 사이의 짧은 틈에 쓰인 로그가 사라질 수 있다
- 압축이 한 주기 미뤄져 디스크를 두 배로 쓴다
- 회전된 파일의 소유자가 바뀌어 읽을 수 없게 된다
- 파일 이름이 날짜로 바뀌어 번호 정렬이 깨진다
journald 를 기본값으로 둔 서버에서 트래픽이 늘자 보존 기간이 조용히 짧아졌다. 이 현상을 가장 잘 설명하는 설정은?
- MaxRetentionSec= 의 기본값이 30일이라 그 시점에 잘린다
- Storage= 가 volatile 이라 재시작할 때마다 지워진다
- SystemMaxFiles= 가 기본 10이라 파일 열 개를 넘기면 지워진다
- SystemMaxUse= 는 용량 기준이고 MaxRetentionSec= 은 기본이 0이라 꺼져 있다
장애가 나서 로그가 폭주한 바로 그 구간의 기록이 가장 많이 비어 있었다. journald 의 어떤 동작이 이 결과를 만드는가?
- RateLimitIntervalSec= 안에서 RateLimitBurst= 를 넘으면 그 구간의 나머지를 버린다
- SyncIntervalSec= 이 지나기 전에 죽으면 그 사이 기록이 통째로 사라진다
- ForwardToSyslog= 가 켜져 있으면 원본이 저장되지 않고 전달만 된다
- SystemMaxFileSize= 를 넘긴 파일은 회전되지 않고 통째로 버려진다
보존 용량을 계산할 때 '접근 로그는 보통 10분의 1로 줄어든다' 는 어림을 쓰는 대신 그 고객의 파일로 압축률을 재야 하는 이유는?
- gzip 버전마다 압축 알고리즘이 달라 같은 파일도 크기가 달라진다
- 회전 주기가 다르면 같은 데이터라도 압축률이 달라진다
- 내용에 따라 줄어드는 정도가 달라, 어림이 틀리면 디스크가 차서 서비스가 멈춘다
- 압축률을 실측해야 logrotate 가 compress 지시자를 받아들인다