6장. 모니터링 문제 조사
사용자 정의 프로젝트 모니터링과 관련된 일반적인 문제에 대한 문제 해결 단계를 찾습니다.
6.1. 사용자 정의 프로젝트 메트릭을 사용할 수 없는 이유 확인 링크 복사링크가 클립보드에 복사되었습니다!
사용자 정의 프로젝트를 모니터링할 때 메트릭이 표시되지 않는 경우 다음 단계에 따라 문제를 해결합니다.
프로세스
지표 이름을 쿼리하고 프로젝트가 올바른지 확인합니다.
- 웹 콘솔의 개발자 화면에서 모니터링 을 클릭하고 Metrics 탭으로 이동합니다.
- Project: 목록에서 메트릭을 보려는 프로젝트를 선택합니다.
쿼리 선택 목록에서 기존 쿼리를 선택하거나 표현식 필드에 PromQL 쿼리를 추가하여 사용자 지정 쿼리를 실행합니다.
메트릭은 차트에 표시됩니다.
쿼리는 프로젝트별로 수행해야 합니다. 표시된 지표는 선택한 프로젝트와 관련이 있습니다.
메트릭을 원하는 Pod가 메트릭을 적극적으로 제공하고 있는지 확인합니다. Pod에 다음
oc exec명령을 실행하여 pod ,포트,/metrics를 대상으로 합니다.oc exec <sample_pod> -n <sample_namespace> -- curl <target_pod_IP>:<port>/metrics
$ oc exec <sample_pod> -n <sample_namespace> -- curl <target_pod_IP>:<port>/metricsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고curl이 설치된 포드에서 명령을 실행해야 합니다.다음 예제 출력은 유효한 버전 지표가 있는 결과를 보여줍니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 잘못된 출력은 해당 애플리케이션에 문제가 있음을 나타냅니다.
-
PodMonitorCRD를 사용하는 경우 일치하는 라벨을 사용하여PodMonitorCRD가 올바른 Pod를 가리키도록 구성되었는지 확인합니다. 자세한 내용은 Prometheus Operator 설명서를 참조하십시오. ServiceMonitorCRD를 사용하고 Pod의/metrics엔드포인트가 지표 데이터를 표시하는 경우 다음 단계를 수행하여 구성을 확인합니다.서비스가 올바른
/metrics엔드포인트를 가리키는지 확인합니다. 이 출력의 서비스레이블은 서비스 모니터레이블및 후속 단계에서 서비스에서 정의한/metrics엔드포인트와 일치해야 합니다.oc get service
$ oc get serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow serviceIP,port,/metrics엔드포인트를 쿼리하여 이전에 Pod에서 실행한curl명령에서 동일한 메트릭을 확인합니다.다음 명령을 실행하여 서비스 IP를 찾습니다.
oc get service -n <target_namespace>
$ oc get service -n <target_namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow /metrics엔드포인트를 쿼리합니다.oc exec <sample_pod> -n <sample_namespace> -- curl <service_IP>:<port>/metrics
$ oc exec <sample_pod> -n <sample_namespace> -- curl <service_IP>:<port>/metricsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 유효한 메트릭은 다음 예제에서 반환됩니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
레이블 일치를 사용하여
ServiceMonitor오브젝트가 원하는 서비스를 가리키도록 구성되었는지 확인합니다. 이렇게 하려면 oc get 서비스 출력의Service오브젝트를출력에서oc get servicemonitorServiceMonitor오브젝트와 비교합니다. 메트릭을 표시하려면 라벨이 일치해야 합니다.예를 들어 이전 단계에서
Service오브젝트에app: prometheus-example-app레이블이 있고ServiceMonitor오브젝트에 동일한app: prometheus-example-appmatch 라벨이 있는 방법을 확인합니다.
- 모든 항목이 유효한 것으로 표시되고 메트릭을 계속 사용할 수 없는 경우 추가 도움말을 위해 지원 팀에 문의하십시오.