Skip to content

Troubleshooting 매뉴얼

Jungseok Sung edited this page Mar 15, 2023 · 13 revisions

사전 세팅

  • 2021-zzimkkong 계정으로 AWS Console 접근 할 수 있도록 세팅
  • 내 Public IP 서버 EC2의 AWS 보안그룹 (SG-DEFAULT)에 등록
  • Zzimkkong CLI 설치
  • Slack zzimkkong workspace 조인
    • 찜꽁 팀원들에게 문의

시나리오

Slack 에러 알람 발생

  1. Slack > zzimkkong workspace > 사이렌-서버에러 채널에서 에러 알람 발생
# slack alarm format
[Environment] [Log Level] [Thread] [Trace ID] [Class Name:Line] - Log Message

# slack alarm sample
[PROD] [ERROR] [http-nio-8080-exec-8] [1e5faf2f7753] [RequestLoggingFilter:?] - [2ms] [500][HTTP METHOD: GET] [PATH INFO: /api/guests/reservations/history] [REQUEST HEADER: x-forwarded-for:39.125.9.126, host:127.0.0.1:8080, connection:close, sec-ch-ua:"Chromium";v="110", "Not A(Brand";v="24", "Google Chrome";v="110", sec-ch-ua-mobile:?0, authorization:Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0amRkdXMwMzAyQGdtYWlsLmNvbSIsImlhdCI6MTY3ODc2OTczNSwiZXhwIjoxNjc4ODU2MTM1fQ.IyRvu8YTTFVgX-GWKy4N_TmifmuvG6ahJoRaW_yvmJQ, user-agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36, sec-ch-ua-platform:"macOS", accept:/, origin:https://zzimkkong.com, sec-fetch-site:same-site, sec-fetch-mode:cors, sec-fetch-dest:empty, referer:https://zzimkkong.com/, accept-encoding:gzip, deflate, br, accept-language:ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7] [REQUEST PARAMETERS: {page=0}] [REMOTE ADDRESS: 39.125.9.126]
  1. Trace ID 부분 발췌
  2. zzimkkong CLI 의 zzimkkong logs 커맨드로 로그 다운로드
  • 3-1. 바로 디버깅 하는 경우 (알람 발생일 = 디버깅 시작일) -> 라이브 로그 파일 (i.e. zzimkkong.log) 다운로드
  • 3-2. 시간이 좀 지나서 디버깅 하는 경우 (알람 발생일 < 디버깅 시작일) -> 에러 발생 날짜의 로그 폴더 다운로드
  1. 다운받은 로그 파일에서 해당 Trace ID 로 검색하여 디버깅

VOC 발생

  1. 이슈 발생 날짜, 시간대 확인
  2. zzimkkong CLI 의 zzimkkong logs 커맨드로 적절한 로그 다운로드
  3. 해당 시간대에 로그들 보며 디버깅

기타

  • zzimkkong CLI 의 zzimkkong server 커맨드로 서버 접근하여 Application, nginx 상태 체크
$ ps aux | grep java

PROD application -> 8080 port
DEV application -> 8081 port

$ systemctl status nginx
  • zzimkkong CLI 의 zzimkkong db 커맨드로 서버 접근하여 DB 상태 체크
$ ps aux | grep mysql

or

$ sudo service mysql status
  • AWS Console 접근해서 EC2 상태, 모니터링 지표 체크
  • SSL certificate (letsencrypt) 만료 상황 체크
# LOCAL
$ zzimkkong server

... zzimkkong server ssh 접속 ...

# EC2
$ sudo openssl x509 -dates -noout -in /etc/letsencrypt/live/zzimkkong.com/cert.pem
  • Dynadot 도메인 (zzimkkong.com) 갱신 체크
    • 찜꽁 팀원들에게 문의
Clone this wiki locally