CodeGym /행동 /Docker SELF /컨테이너 로그 작업

컨테이너 로그 작업

Docker SELF
레벨 11 , 레슨 3
사용 가능

4.1 docker logs 명령의 기초

docker logs 명령어는 컨테이너 모니터링 및 디버깅에 유용한 도구야. 이걸 사용하면 개발자와 시스템 관리자가 컨테이너 로그를 확인할 수 있어서 문제 진단 및 애플리케이션 작동 분석에 도움을 줄 수 있어. 이 강의에서는 docker logs 명령을 사용하는 방법, 사용할 수 있는 매개변수, 로그를 효율적으로 관리하는 방법 등을 자세히 살펴볼거야.

docker logs 명령어는 지정한 컨테이너의 로그를 출력해줘. 이 로그는 컨테이너 내부 프로세스가 표준 출력 (stdout)과 표준 오류 (stderr) 스트림에 기록한 모든 메시지를 포함해.

문법


docker logs [OPTIONS] CONTAINER

여기서:

  • CONTAINER: 로그를 확인하고 싶은 컨테이너의 이름이나 ID야.
  • OPTIONS: 로그 출력 설정을 위한 추가 매개변수들이야.

기본 사용 예제

이 명령어는 my_container 컨테이너에 쌓인 모든 로그를 출력해줄거야.

Terminal


docker logs my_container

4.2 docker logs 명령어의 옵션

docker logs 명령어는 특정 요구에 맞게 로그 출력을 구성할 수 있는 몇 가지 옵션을 지원해.

1. 실시간 로그 보기

실시간 로그 보기를 위해서는 -f (follow) 옵션을 사용해. 이 옵션은 tail -f 명령어와 비슷하게 로그가 업데이트되는 것들을 실시간으로 확인할 수 있게 해줘.

Terminal


docker logs -f my_container 

2. 출력되는 줄 수 제한

docker logs 명령어로 출력되는 줄 수를 --tail 옵션으로 제한할 수 있어. 로그의 전체 내용이 아닌 가장 최근 줄만 필요할 때 유용해.

Terminal


docker logs --tail 100 my_container 

이 예시는 컨테이너 my_container의 최근 100줄의 로그만 출력해.

3. 특정 시간부터 로그 출력

--since 옵션은 특정 시간 이후의 로그를 출력할 수 있어. 시간은 타임스탬프 포맷(예: 2023-07-20T15:00:00) 또는 상대적인 포맷(예: 1h → 지난 한 시간 동안의 로그)으로 지정할 수 있어.

Terminal


docker logs --since "2023-07-20T15:00:00" my_container 

혹은

Terminal


docker logs --since 1h my_container 

4. 특정 시간까지 로그 출력

--until 옵션은 특정 시간 이전의 로그를 출력할 수 있어. 시간 포맷은 --since 옵션과 동일해.

Terminal


docker logs --until "2023-07-20T16:00:00" my_container 

혹은

Terminal


docker logs --until 10m my_container 

5. stdoutstderr 통합 출력

기본적으로 docker logs 명령어는 표준 출력 (stdout)과 표준 에러 (stderr)를 모두 출력해. --stdout--stderr 옵션으로 출력할 스트림을 정할 수 있어.

Terminal


docker logs --stdout my_container 

이 예시는 표준 출력 스트림의 메시지만 출력해.

4.3 사용 예제

예제 1: 로그 마지막 줄 확인 및 업데이트 모니터링

이 예제는 컨테이너 my_container의 최근 50줄 로그를 표시하고 실시간으로 새로운 기록을 모니터링할 거야.

Terminal


docker logs -f --tail 50 my_container 

예제 2: 지난 24시간 동안의 로그 출력

이 예제는 컨테이너 my_container에 대해 지난 24시간 동안 축적된 모든 로그를 표시할 거야.

Terminal


docker logs --since 24h my_container 

예제 3: 특정 시간대의 로그 출력

이 예제는 2023년 7월 20일 15:00부터 16:00 사이에 기록된 컨테이너 my_container의 로그를 표시할 거야.

Terminal


docker logs --since "2023-07-20T15:00:00" --until "2023-07-20T16:00:00" my_container 

4.4 실전 시나리오

1. 애플리케이션 디버깅

만약 네 앱이 제대로 작동하지 않거나 "크래쉬" 난다면, 로그를 확인하면서 문제를 진단할 수 있어. docker logs 명령어를 써봐서 로그에서 에러나 경고를 찾아봐.

Terminal


docker logs my_app_container 

2. 서버 동작 모니터링

서버의 실시간 동작을 모니터링하려면 docker logs 명령어와 -f 옵션을 함께 사용할 수 있어.

Terminal


docker logs -f web_server_container 

이 명령어로 서버의 요청과 응답을 실시간으로 확인할 수 있어.

3. 성능 분석

특정 기간 동안 앱 성능을 분석하려면 --since--until 파라메터를 활용해봐.

Terminal

        
docker logs --since "2023-07-20T00:00:00" --until "2023-07-20T23:59:59" my_app_container 
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION