회전 로그 전체에서 코드·호스트별 장애 집계 RHCSA›로그 분석·쉬움

추천
북마크
질문
AI 튜터 0
root@Learnix - bash
세션 연결 준비 중
문항 난이도 2
실습 서버를 준비하고 있습니다. 문제를 먼저 읽어 두세요.
</> 문제

야간에 appsvc 서비스가 간헐적으로 죽었다는 신고가 들어왔고, 조사 구간의 로그는 이미 여러 번 회전(rotate)되어 일부는 gzip 으로 압축되어 있습니다. /var/log/appsvc 아래 현재 로그와 회전본(.gz 포함)을 하나의 시간 흐름으로 합쳐 분석하고, /root/report 디렉터리에 아래 네 가지 분석 결과 파일을 만드세요. 로그 한 줄은 '시각 host=호스트 appsvc[PID]: 레벨 code=코드 msg=메시지' 형식이며, 첫 번째 필드인 시각은 공백 없는 'YYYY-MM-DDTHH:MM:SS' 형식(예: 2026-09-18T01:05:00, 시간대 표기 없음)입니다. 레벨은 INFO/WARN/ERROR/FATAL 입니다(코드 필드는 WARN 라인에도 붙을 수 있습니다).

- 압축된 회전본(.gz)도 반드시 분석 대상에 포함해야 한다(압축을 풀어 원본 파일을 남겨둘 필요는 없다).
- WARN/INFO 라인에도 code 필드가 있을 수 있으므로 레벨 필터링을 정확히 해야 한다.
- 각 결과 파일에는 요구된 값만 기록한다(앞뒤 공백은 무시된다).
- 외부 인터넷은 사용할 수 없다.

✓ 요구 사항

1. /var/log/appsvc 의 모든 로그 파일과 압축 회전본을 통틀어, 심각도가 ERROR 또는 FATAL 인 라인의 총 건수를 숫자만 한 줄로 /root/report/error_count.txt 에 기록한다.
2. 같은 대상 범위에서 ERROR/FATAL 라인에 한해 code 값별 발생 건수를 집계하여, 건수가 많은 상위 3개를 '코드 건수' 형식(공백 구분)으로 건수 내림차순 3줄로 /root/report/top_codes.txt 에 기록한다(건수가 같으면 코드 문자열 오름차순).
3. 회전본을 포함한 전체 기간에서 가장 먼저 발생한(가장 오래된 시각) FATAL 라인의 타임스탬프 필드(라인의 첫 번째 필드, 예: 2026-09-18T01:05:00)만 한 줄로 /root/report/first_fatal.txt 에 기록한다.
4. ERROR/FATAL 라인이 가장 많이 발생한 host 값을 한 줄로 /root/report/worst_host.txt 에 기록한다.

≡ 로그 분석 관련 실습 문제
RHCSA 문제 전체 보기
미제출
-