4.1 docker logs
명령의 기초
docker logs
명령어는 컨테이너 모니터링 및 디버깅에 유용한 도구야. 이걸 사용하면 개발자와 시스템 관리자가 컨테이너 로그를 확인할 수 있어서 문제 진단 및 애플리케이션 작동 분석에 도움을 줄 수 있어. 이 강의에서는 docker logs
명령을 사용하는 방법, 사용할 수 있는 매개변수, 로그를 효율적으로 관리하는 방법 등을 자세히 살펴볼거야.
docker logs
명령어는 지정한 컨테이너의 로그를 출력해줘. 이 로그는 컨테이너 내부 프로세스가 표준 출력 (stdout)
과 표준 오류 (stderr)
스트림에 기록한 모든 메시지를 포함해.
문법
docker logs [OPTIONS] CONTAINER
여기서:
-
CONTAINER
: 로그를 확인하고 싶은 컨테이너의 이름이나 ID야. -
OPTIONS
: 로그 출력 설정을 위한 추가 매개변수들이야.
기본 사용 예제
이 명령어는 my_container
컨테이너에 쌓인 모든 로그를 출력해줄거야.
docker logs my_container
4.2 docker logs 명령어의 옵션
docker logs
명령어는 특정 요구에 맞게 로그 출력을 구성할 수 있는 몇 가지 옵션을 지원해.
1. 실시간 로그 보기
실시간 로그 보기를 위해서는 -f (follow)
옵션을 사용해. 이 옵션은 tail -f
명령어와 비슷하게 로그가 업데이트되는 것들을 실시간으로 확인할 수 있게 해줘.
docker logs -f my_container
2. 출력되는 줄 수 제한
docker logs
명령어로 출력되는 줄 수를 --tail
옵션으로 제한할 수 있어. 로그의 전체 내용이 아닌 가장 최근 줄만 필요할 때 유용해.
docker logs --tail 100 my_container
이 예시는 컨테이너 my_container
의 최근 100줄의 로그만 출력해.
3. 특정 시간부터 로그 출력
--since
옵션은 특정 시간 이후의 로그를 출력할 수 있어. 시간은 타임스탬프 포맷(예: 2023-07-20T15:00:00) 또는 상대적인 포맷(예: 1h → 지난 한 시간 동안의 로그)으로 지정할 수 있어.
docker logs --since "2023-07-20T15:00:00" my_container
혹은
docker logs --since 1h my_container
4. 특정 시간까지 로그 출력
--until
옵션은 특정 시간 이전의 로그를 출력할 수 있어. 시간 포맷은 --since
옵션과 동일해.
docker logs --until "2023-07-20T16:00:00" my_container
혹은
docker logs --until 10m my_container
5. stdout
및 stderr
통합 출력
기본적으로 docker logs
명령어는 표준 출력 (stdout)
과 표준 에러 (stderr)
를 모두 출력해. --stdout
및 --stderr
옵션으로 출력할 스트림을 정할 수 있어.
docker logs --stdout my_container
이 예시는 표준 출력 스트림의 메시지만 출력해.
4.3 사용 예제
예제 1: 로그 마지막 줄 확인 및 업데이트 모니터링
이 예제는 컨테이너 my_container의 최근 50줄 로그를 표시하고 실시간으로 새로운 기록을 모니터링할 거야.
docker logs -f --tail 50 my_container
예제 2: 지난 24시간 동안의 로그 출력
이 예제는 컨테이너 my_container
에 대해 지난 24시간 동안 축적된 모든 로그를 표시할 거야.
docker logs --since 24h my_container
예제 3: 특정 시간대의 로그 출력
이 예제는 2023년 7월 20일 15:00부터 16:00 사이에 기록된 컨테이너 my_container
의 로그를 표시할 거야.
docker logs --since "2023-07-20T15:00:00" --until "2023-07-20T16:00:00" my_container
4.4 실전 시나리오
1. 애플리케이션 디버깅
만약 네 앱이 제대로 작동하지 않거나 "크래쉬" 난다면, 로그를 확인하면서 문제를 진단할 수 있어. docker logs
명령어를 써봐서 로그에서 에러나 경고를 찾아봐.
docker logs my_app_container
2. 서버 동작 모니터링
서버의 실시간 동작을 모니터링하려면 docker logs
명령어와 -f
옵션을 함께 사용할 수 있어.
docker logs -f web_server_container
이 명령어로 서버의 요청과 응답을 실시간으로 확인할 수 있어.
3. 성능 분석
특정 기간 동안 앱 성능을 분석하려면 --since
와 --until
파라메터를 활용해봐.
docker logs --since "2023-07-20T00:00:00" --until "2023-07-20T23:59:59" my_app_container
GO TO FULL VERSION