4.5. Jaeger UI에서 모니터 탭 구성


요청 속도, 오류, 기간(RED) 메트릭을 추적에서 추출하여 OpenShift Container Platform 웹 콘솔의 Monitor 탭에서 Jaeger 콘솔을 통해 시각화할 수 있습니다. 메트릭은 사용자 워크로드 모니터링 스택에 배포할 수 있는 Prometheus의 수집기에서 스크랩되는 OpenTelemetry 수집기의 범위에서 파생됩니다. Jaeger UI는 Prometheus 끝점에서 이러한 지표를 쿼리하고 시각화합니다.

사전 요구 사항

  • Distributed Tracing Platform에 대한 권한 및 테넌트를 구성했습니다. 자세한 내용은 "권한 및 테넌트 구성"을 참조하십시오.

프로세스

  1. OpenTelemetryCollector 에서 OpenTelemetry 수집기의 사용자 지정 리소스에서 Spanmetrics Connector(spanmetrics)를 활성화합니다. 이는 추적에서 지표를 파생하고 Prometheus 형식으로 메트릭을 내보냅니다.

    범위의 OpenTelemetryCollector 사용자 정의 리소스의 예

    apiVersion: opentelemetry.io/v1beta1
    kind: OpenTelemetryCollector
    metadata:
      name: otel
    spec:
      mode: deployment
      observability:
        metrics:
          enableMetrics: true 
    1
    
      config: |
        connectors:
          spanmetrics: 
    2
    
            metrics_flush_interval: 15s
    
        receivers:
          otlp: 
    3
    
            protocols:
              grpc:
              http:
    
        exporters:
          prometheus: 
    4
    
            endpoint: 0.0.0.0:8889
            add_metric_suffixes: false
            resource_to_telemetry_conversion:
              enabled: true 
    5
    
    
          otlp:
            auth:
              authenticator: bearertokenauth
            endpoint: tempo-redmetrics-gateway.mynamespace.svc.cluster.local:8090
            headers:
              X-Scope-OrgID: dev
            tls:
              ca_file: /var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt
              insecure: false
    
        extensions:
          bearertokenauth:
            filename: /var/run/secrets/kubernetes.io/serviceaccount/token
    
        service:
          extensions:
          - bearertokenauth
          pipelines:
            traces:
              receivers: [otlp]
              exporters: [otlp, spanmetrics] 
    6
    
            metrics:
              receivers: [spanmetrics] 
    7
    
              exporters: [prometheus]
    
    # ...
    Copy to Clipboard Toggle word wrap

    1
    ServiceMonitor 사용자 정의 리소스를 생성하여 Prometheus 내보내기를 스크랩할 수 있습니다.
    2
    Spanmetrics 커넥터는 추적 및 내보내기 메트릭을 수신합니다.
    3
    OpenTelemetry 프로토콜에서 기간을 수신하는 OTLP 수신자입니다.
    4
    Prometheus 내보내기는 Prometheus 형식으로 지표를 내보내는 데 사용됩니다.
    5
    리소스 속성은 기본적으로 삭제됩니다.
    6
    Spanmetrics 커넥터는 추적 파이프라인에서 내보내기로 구성됩니다.
    7
    Spanmetrics 커넥터는 메트릭 파이프라인에서 수신자로 구성됩니다.
  2. TempoStack 사용자 정의 리소스에서 Monitor 탭을 활성화하고 Prometheus 끝점을 Thanos querier 서비스로 설정하여 사용자 정의 모니터링 스택의 데이터를 쿼리합니다.

    활성화된 Monitor 탭을 사용하는 TempoStack 사용자 정의 리소스의 예

    apiVersion: tempo.grafana.com/v1alpha1
    kind: TempoStack
    metadata:
      name: redmetrics
    spec:
      storage:
        secret:
          name: minio-test
          type: s3
      storageSize: 1Gi
      tenants:
        mode: openshift
        authentication:
          - tenantName: dev
            tenantId: "1610b0c3-c509-4592-a256-a1871353dbfa"
      template:
        gateway:
          enabled: true
        queryFrontend:
          jaegerQuery:
            monitorTab:
              enabled: true 
    1
    
              prometheusEndpoint: https://thanos-querier.openshift-monitoring.svc.cluster.local:9092 
    2
    
              redMetricsNamespace: "" 
    3
    
    
    # ...
    Copy to Clipboard Toggle word wrap

    1
    Jaeger 콘솔에서 모니터링 탭을 활성화합니다.
    2
    사용자 워크로드 모니터링의 Thanos Querier의 서비스 이름입니다.
    3
    선택사항: Jaeger 쿼리가 Prometheus 지표를 검색하는 메트릭 네임스페이스입니다. 0.109.0 이전의 OpenTelemetry 수집기 버전을 사용하는 경우에만 이 행을 포함합니다. OpenTelemetry Collector 버전 0.109.0 이상을 사용하는 경우 이 행을 생략합니다.
  3. 선택 사항: spanmetrics 커넥터에서 생성한 범위를 경고 규칙과 함께 사용합니다. 예를 들어 느린 서비스에 대한 경고 또는 서비스 수준 목표(SLO)를 정의하는 경우 커넥터는 duration_bucket 히스토그램 및 호출 카운터 메트릭을 생성합니다. 이러한 지표에는 서비스, API 이름, 작업 유형 및 기타 속성을 식별하는 레이블이 있습니다.

    Expand
    표 4.4. spanmetrics 커넥터에서 생성된 지표의 레이블
    레이블설명

    service_name

    otel_service_name 환경 변수로 설정된 서비스 이름입니다.

    frontend

    span_name

    작업 이름입니다.

    • /
    • /customer

    span_kind

    서버, 클라이언트, 메시징 또는 내부 작업을 식별합니다.

    • SPAN_KIND_SERVER
    • SPAN_KIND_CLIENT
    • SPAN_KIND_PRODUCER
    • SPAN_KIND_CONSUMER
    • SPAN_KIND_INTERNAL

    프런트 엔드 서비스의 2000ms 내에서 요청의 95%를 제공하지 않을 때 SLO에 대한 경고 규칙을 정의하는 PrometheusRule 사용자 정의 리소스의 예

    apiVersion: monitoring.coreos.com/v1
    kind: PrometheusRule
    metadata:
      name: span-red
    spec:
      groups:
      - name: server-side-latency
        rules:
        - alert: SpanREDFrontendAPIRequestLatency
          expr: histogram_quantile(0.95, sum(rate(duration_bucket{service_name="frontend", span_kind="SPAN_KIND_SERVER"}[5m])) by (le, service_name, span_name)) > 2000 
    1
    
          labels:
            severity: Warning
          annotations:
            summary: "High request latency on {{$labels.service_name}} and {{$labels.span_name}}"
            description: "{{$labels.instance}} has 95th request latency above 2s (current value: {{$value}}s)"
    Copy to Clipboard Toggle word wrap

    1
    프런트 엔드 서버 응답 시간 값의 95%가 2000ms 미만인지 확인하기 위한 표현식입니다. 시간 범위([5m])는 스크랩 간격의 4배 이상이고 메트릭의 변경 사항을 수용할 수 있을 만큼 길어야 합니다.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat