3.3. Prometheus의 쿼리 로그 파일 활성화
엔진에서 실행한 모든 쿼리를 로그 파일에 작성하도록 Prometheus를 구성할 수 있습니다. 기본 플랫폼 모니터링 및 사용자 정의 워크로드 모니터링에 대해 이를 수행할 수 있습니다.
로그 순환은 지원되지 않으므로 문제를 해결해야 하는 경우에만 이 기능을 일시적으로 활성화합니다. 문제 해결을 마친 후 ConfigMap
오브젝트의 변경 사항을 되돌려서 쿼리 로깅을 비활성화하여 기능을 활성화합니다.
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. openshift-monitoring
프로젝트에서 Prometheus의 쿼리 로그 파일 기능을 활성화하는 경우:-
cluster-admin
클러스터 역할의 사용자로 클러스터에 액세스할 수 있습니다. -
cluster-monitoring-config
ConfigMap
오브젝트를 생성하셨습니다.
-
openshift-user-workload-monitoring
프로젝트에서 Prometheus의 쿼리 로그 파일 기능을 활성화하는 경우:-
cluster-admin
클러스터 역할의 사용자로 또는openshift-user-workload-monitoring
프로젝트에서user-workload-monitoring-config-edit
역할의 사용자로 클러스터에 액세스할 수 있습니다. -
user-workload-monitoring-config
ConfigMap
오브젝트가 생성되어 있습니다.
-
절차
openshift-monitoring
프로젝트에서 Prometheus의 쿼리 로그 파일을 설정하려면 다음을 수행합니다.openshift-monitoring
프로젝트에서cluster-monitoring-config
ConfigMap
오브젝트를 편집합니다.$ oc -n openshift-monitoring edit configmap cluster-monitoring-config
data/config.yaml
아래에prometheusK8s
의queryLogFile: <path
>를 추가합니다.apiVersion: v1 kind: ConfigMap metadata: name: cluster-monitoring-config namespace: openshift-monitoring data: config.yaml: | prometheusK8s: queryLogFile: <path> 1
- 1
- 쿼리가 기록될 파일의 전체 경로입니다.
파일을 저장하여 변경 사항을 적용합니다.
주의모니터링 구성 맵에 대한 변경 사항을 저장하면 관련 프로젝트의 Pod 및 기타 리소스가 재배포될 수 있습니다. 해당 프로젝트에서 실행 중인 모니터링 프로세스도 다시 시작할 수 있습니다.
구성 요소의 포드가 실행 중인지 확인합니다. 다음 샘플 명령은
openshift-monitoring
프로젝트의 Pod 상태를 나열합니다.$ oc -n openshift-monitoring get pods
쿼리 로그를 읽습니다.Read the query log:
$ oc -n openshift-monitoring exec prometheus-k8s-0 -- cat <path>
중요기록된 쿼리 정보를 검사한 후 구성 맵에서 설정을 되돌립니다.
openshift-user-workload-monitoring
프로젝트에서 Prometheus의 쿼리 로그 파일을 설정하려면 다음을 수행합니다.openshift-user-workload-monitoring
프로젝트에서user-workload-monitoring-config
ConfigMap
오브젝트를 편집합니다.$ oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
data/config.yaml
아래의prometheus
에queryLogFile: <path
>를 추가합니다.apiVersion: v1 kind: ConfigMap metadata: name: user-workload-monitoring-config namespace: openshift-user-workload-monitoring data: config.yaml: | prometheus: queryLogFile: <path> 1
- 1
- 쿼리가 기록될 파일의 전체 경로입니다.
파일을 저장하여 변경 사항을 적용합니다.
참고클러스터 관리자가 사용자 정의 프로젝트에 대한 모니터링을 활성화하지 않는 한
user-workload-monitoring-config
ConfigMap
오브젝트에 적용되는 구성이 활성화되어 있지 않습니다.주의모니터링 구성 맵에 대한 변경 사항을 저장하면 관련 프로젝트의 Pod 및 기타 리소스가 재배포될 수 있습니다. 해당 프로젝트에서 실행 중인 모니터링 프로세스도 다시 시작할 수 있습니다.
구성 요소의 포드가 실행 중인지 확인합니다. 다음 예제 명령은
openshift-user-workload-monitoring
프로젝트의 Pod 상태를 나열합니다.$ oc -n openshift-user-workload-monitoring get pods
쿼리 로그를 읽습니다.Read the query log:
$ oc -n openshift-user-workload-monitoring exec prometheus-user-workload-0 -- cat <path>
중요기록된 쿼리 정보를 검사한 후 구성 맵에서 설정을 되돌립니다.
추가 리소스
- 모니터링 구성 맵을 생성하는 단계는 모니터링 스택 구성 준비를 참조하십시오.
- 사용자 정의 모니터링을 활성화하는 단계는 사용자 정의 프로젝트에 대한 모니터링 활성화를 참조하십시오.