장애를 빠르게 발견할 수 있음
서비스 신뢰도 유지
원인 분석에 필요한 데이터 확보
서버가 정상적으로 실행 중인지 확인해야 합니다.
EC2, Lightsail, 온프레미스 서버 등 어떤 환경이든 기본적으로 CPU, 메모리, 디스크 사용량을 확인해야 합니다.
주요 지표
주의할 점
Nginx, Apache 같은 웹 서버가 정상적으로 요청을 받고 응답하는지 확인해야 합니다.
웹 서버 로그를 보면 사용자의 요청, 응답 코드, 에러 발생 여부를 확인할 수 있습니다.
확인할 항목
200 OK 응답이 정상적으로 발생하는지404 Not Found가 과도하게 많지 않은지500 Internal Server Error가 발생하지 않는지# Nginx access log 확인
tail -f /var/log/nginx/access.log
# Nginx error log 확인
tail -f /var/log/nginx/error.log
React, NestJS, Spring, Node.js 같은 애플리케이션이 정상적으로 동작하는지 확인해야 합니다.
프론트엔드는 화면이 깨지거나 JavaScript 오류가 발생할 수 있고, 백엔드는 API 응답 실패나 DB 연결 오류가 발생할 수 있습니다.
백엔드에서 확인할 항목
프론트엔드에서 확인할 항목
DB는 서비스의 핵심 데이터가 저장되는 곳이므로 반드시 모니터링해야 합니다.
DB 장애가 발생하면 로그인, 주문, 상담 신청, 관리자 페이지 등 대부분의 기능이 영향을 받습니다.
확인할 항목
실무 예시
먼저 장애가 전체 서비스 문제인지, 일부 기능 문제인지 확인합니다.
확인 질문
장애는 대부분 최근 변경 사항과 관련이 있는 경우가 많습니다.
배포, 설정 변경, DB 변경, 외부 API 변경, 도메인/DNS 변경 등을 확인해야 합니다.
확인할 변경 사항
# 최근 에러 로그 확인
tail -n 100 /var/log/nginx/error.log
# 실시간 로그 확인
tail -f /var/log/nginx/error.log
# 특정 키워드 검색
grep "500" /var/log/nginx/access.log
grep "error" /var/log/nginx/error.log
로그 확인 기준
원인을 완전히 해결하기 전이라도 사용자 피해를 줄이기 위한 임시 조치가 필요할 수 있습니다.
임시 조치 예시
단, 서버 재시작은 원인을 지우는 행동이 될 수 있으므로, 가능하면 재시작 전에 로그를 먼저 확인해야 합니다.
장애를 임시로 복구한 뒤에는 반드시 원인을 정리해야 합니다.
“다시 되니까 끝”이라고 생각하면 같은 장애가 반복됩니다.
정리할 내용
Nginx가 뒤쪽의 애플리케이션 서버와 통신하지 못할 때 자주 발생합니다.
가능한 원인
# PM2 프로세스 확인
pm2 list
# PM2 로그 확인
pm2 logs
# 애플리케이션 재시작
pm2 restart app
요청한 페이지나 파일을 서버에서 찾을 수 없을 때 발생합니다.
가능한 원인
try_files 설정 문제React SPA에서 자주 발생하는 문제
/event/galaxy 같은 경로로 직접 접속했을 때 서버가 해당 파일을 찾지 못해 404가 발생할 수 있습니다.index.html로 보내도록 설정해야 합니다.location / {
try_files $uri /index.html;
}
서버 내부에서 예외가 발생했을 때 나타납니다.
가능한 원인
대응 방법
HTTPS 접속 시 “안전하지 않은 사이트” 경고가 뜨거나 접속이 차단될 수 있습니다.
가능한 원인
# certbot 인증서 상태 확인
sudo certbot certificates
# 인증서 갱신 테스트
sudo certbot renew --dry-run
AWS에서 제공하는 모니터링 서비스입니다.
EC2, RDS, Lambda, ELB 등 AWS 리소스의 상태를 확인할 수 있습니다.
활용 예시
프론트엔드와 백엔드 애플리케이션 오류를 수집하는 도구입니다.
사용자가 직접 신고하지 않아도 어떤 오류가 발생했는지 확인할 수 있습니다.
확인 가능한 정보
웹사이트가 정상적으로 접속되는지 주기적으로 확인해주는 도구입니다.
사이트가 다운되면 이메일, 문자, Slack 등으로 알림을 받을 수 있습니다.
활용 예시
https://www.example.com/health
https://api.example.com/health
장애는 서버 로그에서만 확인되는 것이 아닙니다.
Google Analytics나 Search Console에서도 이상 징후를 확인할 수 있습니다.
확인 가능한 이상 징후
## 장애 기록
### 1. 발생 일시
- 2026-05-24 14:30
### 2. 장애 범위
- 이벤트 페이지 접속 시 502 오류 발생
### 3. 사용자 영향
- 사전예약 상담 신청 페이지 접근 불가
### 4. 원인
- NestJS 서버 배포 후 PM2 프로세스가 정상적으로 재시작되지 않음
### 5. 조치 내용
- PM2 로그 확인
- 프로세스 재시작
- Nginx 상태 확인
- 페이지 정상 접속 확인
### 6. 재발 방지
- 배포 스크립트에 PM2 상태 확인 명령 추가
- 헬스체크 URL 모니터링 추가
- 배포 후 체크리스트 작성
502 Bad Gateway, 404 Not Found, 500 Internal Server Error, SSL 인증서 문제가 있습니다.