본문 바로가기
WIKI 기술 지식 베이스

Query metrics

원문 보기 위키 갱신

출처: 문서

본문

쿼리 메트릭

2.16에 도입됨 {: .label .label-purple }

집계 타입, 쿼리 타입, 지연 시간, 쿼리 타입별 리소스 사용량 같은 주요 쿼리 메트릭은 OpenTelemetry(OTel) 계측 프레임워크를 사용해서 검색 경로를 따라 수집돼요. 텔레메트리 데이터는 OTel 메트릭 exporters를 사용해서 소비할 수 있어요.

쿼리 메트릭 생성 구성하기

쿼리 메트릭 생성을 구성하려면 다음 단계를 따르세요.

1단계: OpenTelemetry 플러그인 설치

OpenTelemetry 플러그인 설치 방법은 분산 트레이싱을 참고하세요.

2단계: 쿼리 메트릭 활성화

다음 opensearch.yml 설정을 구성해서 쿼리 메트릭을 활성화하세요:

telemetry.feature.metrics.enabled: true
search.query.metrics.enabled: true

{% include copy.html %}

다음은 텔레메트리 구성이 포함된 전체 샘플 구성이에요:

# Enable query metrics feature
search.query.metrics.enabled: true
telemetry.feature.metrics.enabled: true

# OTel-related configuration
opensearch.experimental.feature.telemetry.enabled: true
telemetry.tracer.sampler.probability: 1.0
telemetry.feature.tracer.enabled: true

{% include copy.html %}

또는 API를 사용해서 쿼리 메트릭 생성을 구성할 수도 있어요:

PUT _cluster/settings
{
  "persistent" : {
    "search.query.metrics.enabled" : true
  }
}

{% include copy-curl.html %}

gRPC exporter를 사용해서 메트릭과 트레이스의 내보내기를 구성하세요. 자세한 내용은 Exporters를 참고하세요. 기본 로깅 exporter를 사용한다면 이 단계는 건너뛰어도 돼요:

telemetry.otel.tracer.span.exporter.class: io.opentelemetry.exporter.otlp.trace.OtlpGrpcSpanExporter
telemetry.otel.metrics.exporter.class: io.opentelemetry.exporter.otlp.metrics.OtlpGrpcMetricExporter

{% include copy.html %}

메트릭

쿼리 메트릭은 다음과 같은 측정값을 제공해요:

  • 쿼리 타입별 쿼리 수 (예: match 또는 regex 쿼리의 수)
  • 집계 타입별 쿼리 수 (예: terms 집계 쿼리의 수)
  • 정렬 순서별 쿼리 수 (예: 오름차순 및 내림차순 sort 쿼리의 수)
  • 쿼리 타입, 집계 타입, 정렬 순서별 latency 히스토그램
  • 쿼리 타입, 집계 타입, 정렬 순서별 cpu 히스토그램
  • 쿼리 타입, 집계 타입, 정렬 순서별 memory 히스토그램

기본 로깅 exporter

기본적으로 gRPC exporter를 구성하지 않으면 메트릭과 트레이스는 로그 파일로 내보내져요. 데이터는 opensearch/logs 디렉터리의 다음 파일에 저장돼요:

  • opensearch_otel_metrics.log
  • opensearch_otel_traces.log

더 알아보기 (Learn more)