AWS 환경에서 서비스를 운영하다 보면 “갑자기 로그가 안 남는다”는 상황은 생각보다 자주 발생한다. 특히 Amazon EC2 기반 서버에서는 로그 수집 경로가 다양하기 때문에 문제 원인을 빠르게 파악하지 못하면 장애 대응이 늦어질 수 있다.
이 글에서는 EC2 서버에서 로그가 기록되지 않는 주요 원인을 운영 관점에서 체계적으로 정리하고, 빠르게 점검할 수 있는 방법까지 함께 설명한다.
1. 애플리케이션 레벨 문제
가장 먼저 확인해야 할 것은 애플리케이션 자체의 로그 설정이다.
주요 원인
- 로그 레벨이 ERROR 이상으로 변경됨 (INFO 로그 미출력)
- 로그 파일 경로 변경 또는 잘못된 설정
- 로깅 라이브러리 오류 (logback, log4j 등)
점검 방법
- 설정 파일 확인 (
logback.xml,application.yml) - 최근 배포 이력 확인 (CI/CD 영향)
- 프로세스 재시작 여부 확인
👉 특히 배포 이후 로그가 안 남는다면 코드/설정 변경 가능성이 가장 높다.
2. 디스크 용량 부족 (가장 흔한 원인)
EC2 운영에서 가장 흔한 케이스는 디스크가 꽉 차면서 로그 파일이 더 이상 기록되지 않는 상황이다.
주요 원인
- 로그 파일 누적 (log rotation 미설정)
- 임시 파일 증가 (/tmp, /var 등)
- 대용량 dump 파일 생성
점검 명령어
df -h
du -sh /var/log/*
해결 방법
- logrotate 설정 적용
- 오래된 로그 삭제
- 디스크 확장 (EBS 볼륨 증설)
👉 디스크 100% 상태에서는 로그뿐 아니라 서비스 자체가 멈출 수 있다.
3. 권한(Permission) 문제
로그 파일은 정상적으로 생성되지만, 쓰기 권한이 없어서 기록이 실패하는 경우도 많다.
주요 원인
- 로그 디렉토리 권한 변경
- 실행 유저 변경 (ex: root → appuser)
- 컨테이너 환경에서 volume 권한 mismatch
점검 방법
ls -al /var/log/myapp
해결 방법
chown -R appuser:appuser /var/log/myapp
chmod 755 /var/log/myapp
4. 로그 로테이션(logrotate) 설정 오류
로그 관리 자동화를 위해 사용하는 logrotate 설정이 잘못된 경우 로그가 생성되지 않을 수 있다.
주요 원인
- logrotate 후 파일이 삭제되었지만 애플리케이션이 reopen하지 않음
- 잘못된 rotate 주기 설정
- copytruncate 옵션 누락
점검 방법
cat /etc/logrotate.d/myapp
👉 특히 Java 애플리케이션은 로그 파일 핸들을 유지하기 때문에 설정 오류 시 로그가 멈춘 것처럼 보일 수 있다.
5. CloudWatch Agent 또는 로그 수집 에이전트 문제
EC2에서 로그를 Amazon CloudWatch로 전송하는 경우, 수집 에이전트 문제로 로그가 안 보일 수 있다.
주요 원인
- CloudWatch Agent 중지
- IAM Role 권한 문제
- 로그 경로 mismatch
점검 방법
systemctl status amazon-cloudwatch-agent
해결 방법
systemctl restart amazon-cloudwatch-agent
👉 로컬에는 로그가 남지만 CloudWatch에 안 보이면 에이전트 문제 가능성 높음
6. 프로세스/서비스 비정상 상태
애플리케이션이 정상적으로 실행되지 않으면 로그도 생성되지 않는다.
주요 원인
- 프로세스 다운 (OOM, crash)
- 시스템 리소스 부족 (CPU, Memory)
- 커널 OOM Killer 작동
점검 방법
ps -ef | grep myapp
dmesg | grep -i kill
👉 로그가 “갑자기 끊겼다”면 프로세스 종료 시점 확인이 중요하다.
7. 파일 디스크립터(File Descriptor) 한계 초과
리눅스 시스템에서 파일 오픈 수 제한을 초과하면 로그 파일도 생성되지 않는다.
주요 원인
- ulimit 설정 부족
- 대량 트래픽 환경에서 FD 고갈
점검 방법
ulimit -n
lsof | wc -l
해결 방법
ulimit -n 65535
8. 네트워크 파일 시스템(NFS/EFS) 이슈
로그를 EFS/NFS에 저장하는 경우, 네트워크 문제로 인해 로그 기록이 실패할 수 있다.
주요 원인
- 마운트 끊김
- 네트워크 지연
- 파일 시스템 lock
9. 빠른 장애 대응 체크리스트
운영 환경에서 즉시 확인해야 할 순서:
df -h→ 디스크 상태 확인ps -ef→ 프로세스 상태 확인- 로그 파일 존재 여부 확인
- CloudWatch Agent 상태 확인
- 최근 배포 여부 확인
- 권한 및 logrotate 설정 확인
👉 이 순서대로 보면 대부분 5~10분 내 원인 파악 가능
결론
EC2 서버에서 로그가 갑자기 안 남는 문제는 단일 원인보다는 여러 계층(애플리케이션, OS, 인프라)의 복합 문제로 발생하는 경우가 많다.
특히 운영 환경에서는 로그 자체가 장애 분석의 핵심 데이터이기 때문에,
- 로그 로테이션
- 모니터링
- 디스크 관리
를 사전에 설계하는 것이 중요하다.
결국 로그가 멈췄다는 것은 단순한 문제가 아니라 장애 대응 능력이 사라진 상태를 의미한다.
따라서 운영자는 항상 “로그가 정상적으로 남고 있는가”를 기본 헬스체크 지표로 관리해야 한다.