로그와 상태 확인: 브라우저 개발자 도구, 터미널, 컨테이너 로그
16강. 로그와 상태 확인: 브라우저 개발자 도구, 터미널, 컨테이너 로그
1. 이번 강의에서 해결할 문제
오류 메시지를 한 화면만 보고 원인을 단정하면 실제 실패 계층을 놓칩니다. 사용자 브라우저부터 배포 workflow와 선택적 컨테이너까지 증거를 순서대로 모읍니다.
2. 학습 목표
3. 핵심 개념
상태 확인은 응답 코드·핵심 콘텐츠 같은 현재 결과를 짧게 검사하고, 로그는 그 결과에 이르는 사건을 시간순으로 제공합니다. 정적 사이트는 브라우저와 Pages 응답이 중심이며 컨테이너 API는 프로세스·health endpoint·container logs가 추가됩니다. 로그에는 토큰·비밀번호·개인정보를 남기지 않습니다.
4. 단계별 실습
1. PowerShell
실행 위치: 로컬 터미널
실행 전 확인: 실제 공개 주소로 바꾸고 인증 헤더는 사용하지 않습니다.
대상: 가상 배포 URL 응답
$url = "https://example-learner.github.io/dev-foundations/"
$response = Invoke-WebRequest -Uri $url
$response.StatusCode
$response.Headers["Content-Type"]
$response.Content.Contains("개발 기초 학습서")
예상 결과: 실제 주소에서 200, HTML 형식과 핵심 제목 포함 여부를 확인합니다.
2. 브라우저·GitHub 웹 화면
실행 위치: 배포 사이트와 Actions 실행
실행 전 확인: 토큰·쿠키·Authorization 헤더를 캡처하거나 공유하지 않습니다.
대상: 실패 요청과 최초 실패 step
1. Network에서 실패 상태·URL·시간 기록
2. Console의 첫 오류 기록
3. 같은 SHA의 Actions 실행 열기
4. 실패한 첫 step과 종료 코드 확인
예상 결과: 사용자 오류와 빌드·배포 실패가 같은 사건인지 구분할 수 있습니다.
3. PowerShell
실행 위치: 로컬 Docker 환경
실행 전 확인: docker ps에서 정확한 컨테이너 이름을 확인합니다.
대상: dev-foundations-site 컨테이너가 있을 때만
docker ps --filter "name=dev-foundations-site"
docker logs --tail 50 --timestamps dev-foundations-site
예상 결과: 대상 컨테이너 상태와 최근 50줄만 표시됩니다.
5. 배포·운영 흐름이 동작하는 이유
각 계층은 서로 다른 증거를 냅니다. HTTP 응답은 사용자 결과, Actions 로그는 artifact 생성·배포 과정, Docker 로그는 실행 프로세스 상태를 보여 줍니다. 같은 시간·SHA·URL로 묶으면 추측을 줄일 수 있습니다.
6. 자주 하는 실수와 안전한 해결법
7. 직접 실습
8. 이해 점검 질문 3개
9. 핵심 요약
로그와 상태 확인: 브라우저 개발자 도구, 터미널, 컨테이너 로그 미니 퀴즈
선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.
학습을 마쳤나요?
직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.