
로깅(Logging)
이 문서는 NGINX Ingress Controller에서 제공하는 로깅 에 대한 개요를 제공합니다.
NGINX Ingress Controller는 Ingress Controller 프로세스(NGINX 구성을 생성하고 이를 적용하기 위해 NGINX를 Reload하는 프로세스)의 로그와 NGINX Access 및 Error 로그를 노출합니다. 모든 로그는 Ingress Controller 프로세스의 표준 출력 및 오류로 전송됩니다. 로그를 보려면 Ingress Controller Pod에 대해 kubectl logs
명령을 실행할 수 있습니다. 예를 들어:
$ kubectl logs <nginx-ingress-pod> -n nginx-ingress
목차
1. Ingress Controller Process 로그
2. NGINX 로그
1. Ingress Controller Process 로그
Ingress Controller Process 로그는 로그 상세 수준을 설정하는 Ingress Controller러의 -v
Command-Line Arguments를 통해 구성됩니다. 기본값은 최소 로그 양이 보고되는 1
입니다. 값 3
은 문제 해결에 유용합니다. Ingress Controller가 Kubernetes API에서 업데이트를 가져오고 NGINX 구성을 생성하며 NGINX를 Reload하는 방법을 확인할 수 있습니다.
Ingress Controller Command-Line Arguments에 대한 자세한 내용은 문서를 참조십시오.
2. NGINX 로그
NGINX에는 두 개의 로그가 포함되어 있습니다.
- Access 로그: 여기서 NGINX는 요청이 처리된 직후 Access 로그에 클라이언트 요청에 대한 정보를 기록합니다. Access 로그는 로깅 관련 ConfigMap Key를 통해 구성됩니다.
- HTTP 및 HTTPS 트래픽에 대한
log-format
입니다. - TCP, UDP 및 TLS Passthrough 트래픽에 대한
stream-log-format
.
- HTTP 및 HTTPS 트래픽에 대한
또한 access-log-off
ConfigMap Key를 사용하여 Access 로깅 을 비활성화할 수 있습니다.
- Error 로그: 여기서 NGINX는 다양한 심각도 수준에서 발생한 문제에 대한 정보를 기록합니다.
error-log-level
ConfigMap Key를 통해 구성됩니다. 디버그 로깅 을 활성화하려면 Level을debug
로 설정하고 NGINX가 디버그 바이너리nginx-debug
로 시작되도록-nginx-debug
Command-line Arguments도 설정합니다.