본문으로 건너뛰기

Kubernetes

쿠버네티스 컨테이너와 컨테이너 내부 애플리케이션의 로그를 수집하려면 다음을 확인하세요.

에이전트 업데이트

쿠버네티스 에이전트 1.1.35 버전부터 가능합니다. 업데이트 방법은 다음 문서를 참조하세요.

에이전트 설정 확인

홈 화면 > 프로젝트 선택 > 로그 > 로그 설정

와탭 모니터링 서비스 초기 화면에서 프로젝트를 선택한 다음 프로젝트 메뉴 하위에 로그 > 로그 설정 메뉴를 선택하세요. 에이전트 설정 및 로그 모니터링 활성화 섹션의 에이전트 설정 확인 탭의 안내를 참조해 진행하세요.

컨테이너 로그 수집 활성화

쿠버네티스 로그 노드 에이전트 설정

쿠버네티스 컨테이너에 로그를 수집하려면 에이전트 설정 확인 탭에서 로그 설정 적용하기 버튼을 선택하세요.

컨테이너 내부 애플리케이션 로그 수집 활성화

Java 2.1.1, Python 1.2.2 버전부터 가능합니다. 쿠버네티스 컨테이너 상에서 실행되는 애플리케이션의 로그를 수집할 수 있도록 다음을 참조하세요.

쿠버네티스 로그 애플리케이션 에이전트 설정

  1. 에이전트 설정 확인 탭 하단의 number 1 에이전트 설정 메뉴 아이콘 에이전트 설정 버튼을 선택하세요.

  2. 애플리케이션 에이전트 설정 메뉴로 이동 후 number 2 옵션 작성 창에서 직접 입력을 선택하세요.

  3. 다음의 에이전트 설정 명령어의 logsink_enabled truenumber 3 입력창에 입력하세요.

    logsink_enabled=true 
  4. number 4 적용 버튼을 선택하세요. 쿠버네티스 컨테이너 내 애플리케이션의 로그를 수집할 수 있습니다.

노트
  • Java 애플리케이션 로그 수집에 대한 자세한 내용은 다음 문서를 참조하세요.

  • Python 애플리케이션 로그 수집에 대한 자세한 내용은 다음 문서를 참조하세요.

  • Go 애플리케이션 로그 수집에 대한 자세한 내용은 다음 문서를 참조하세요.

로그 모니터링 활성화

홈 화면 > 프로젝트 선택 > 로그 > 로그 설정

로그 모니터링 시작하기 섹션의 로그 모니터링 활성화 탭에서 토글 버튼으로 와탭 로그 모니터링을 활성화 또는 비활성화 할 수 있습니다.

로그 모니터링 시작하기

  • 아이콘 토글 버튼을 켜면 로그 모니터링이 활성화됩니다. 활성화한 날부터 15일 동안 무료로 체험하실 수 있습니다.
  • 아이콘 토글 버튼을 끄면 로그 모니터링이 비활성화됩니다. 로그를 더 이상 저장하지 않습니다.
노트

권한

에이전트 설치 후 프로젝트에 대한 수정 권한이 있는 경우에만 로그 모니터링을 활성화할 수 있습니다. 권한에 대한 자세한 내용은 다음 문서를 참조하세요.

쿠버네티스 로그 모니터링 카테고리 안내

쿠버네티스 관련 다양한 로그를 확인할 수 있습니다. 와탭 쿠버네티스에서 제공하는 모니터링 카테고리는 다음과 같습니다. 설정에 따라 중복된 로그 내용이 저장될 수 있으니 반드시 중복 여부를 확인하세요.

카테고리설명
#K8sEvent
  • 쿠버네티스에서 발생하는 이벤트가 저장된 로그
  • 사용자 설정과 무관하게 기본 생성
#WhatapEvent
  • 와탭 이벤트 설정에 의해 발생한 이벤트가 저장된 로그
  • 사용자 설정과 무관하게 기본 생성
containerStdout
  • 컨테이너 Standard Out 로그
  • 사용자 설정 시 생성
  • 노드 에이전트에 logsink_enabled=true 설정 추가 시
AppLog
  • 컨테이너 내 애플리케이션 로그
  • 사용자 설정 시 생성
  • 애플리케이션 에이전트에 logsink_enabled=true 설정 추가 시

containerStdOut 로그 필터 설정

홈 화면 > 프로젝트 선택 > 관리 > 에이전트 설정

쿠버네티스 로그에서 필요한 정보를 선별하기 위한 필터링 옵션을 안내합니다. 필터링을 통해 허용하거나 제외할 로그를 설정할 수 있습니다. 에이전트 설정 메뉴에서 옵션 작성 방식으로 직접 입력을 선택하세요.

쿠버네티스 로그 필터 설정

로그 네이밍 규칙

쿠버네티스 containerStdOut 로그는 노드의 /var/log/containers/ 경로 하위에 생성됩니다. 다음과 같은 네이밍 규칙을 따르고 있습니다.

<podName>_<namespace>_<containerName>-<containerId>.log

로그 필터 옵션

  • log_filter_enabled bool

    기본값 false

    로그 필터 사용 여부를 설정합니다.

  • log_filter_allow_list list

    허용할 로그의 리스트를 설정합니다. 필터링 적용 시 포함할 항목을 의미합니다.

  • log_filter_deny_list list

    제외할 로그의 리스트를 설정합니다. 필터링 적용 시 제외할 항목을 의미합니다.

로그 필터 동작

log_filter_enabled 옵션이 활성화 된 경우에만 로그 필터가 동작합니다. 해당 옵션의 값이 true로 설정된 상태에서 log_filter_allow_listlog_filter_deny_list를 통해 로그를 선택적으로 수집할 수 있습니다.

로그 필터는 블랙리스트 기반으로 작동합니다. 예를 들어 log_filter_enabled 활성화 후 log_filter_allow_list 옵션에 추가할 항목을 설정하지 않을 경우 기본적으로 모든 컨테이너의 로그 수집이 차단됩니다.

또한 로그 필터는 allow 규칙 보다 deny 규칙의 우선 순위가 높습니다. 동일한 항목이 allow와 deny에 모두 설정된 경우, deny 규칙이 우선 적용되어 해당 로그는 수집되지 않습니다.

로그 필터 예시

단일 네임스페이스 로그 수집

  • 허용 log_filter_allow_list *_infra_*

infra 네임스페이스에 존재하는 모든 컨테이너가 수집 대상으로 특정됩니다.

다중 네임스페이스 로그 수집

  • 허용 log_filter_allow_list *_infra_*, *_monitoring_*

infra, monitoring 네임스페이스에 존재하는 모든 컨테이너가 수집 대상으로 특정됩니다.

특정 단어를 포함하는 Pod 제외

  • 허용 log_filter_allow_list *_*_*

  • 제외 log_filter_deny_list *prod*_*_*

모든 컨테이너가 수집 대상으로 특정되지만, podNameprod가 포함된 로그는 제외됩니다.

특정 단어를 포함하는 Pod 로그 수집

  • 허용 log_filter_allow_list *prod*_*_*

podNameprod 가 포함된 파드의 로그만 수집됩니다.

다중 네임스페이스 로그 수집 및 특정 단어 포함하는 Pod 제외

  • 허용 log_filter_allow_list *_infra_*, *_monitoring_*

  • 제외 log_filter_deny_list *prod*_*_*

infra, monitoring 네임스페이스의 로그가 수집되고, podNameprod가 포함된 로그는 제외됩니다.

컨테이너 이름 내 특정 단어로 시작하는 컨테이너 로그 제외

  • 허용 log_filter_allow_list *_*_db-*

모든 네임스페이스에서 containerNamedb로 시작하는 컨테이너의 로그는 제외됩니다.