第8章 エグゼンプラーを使用して外れ値とエラーを例を分析する


エグゼンプラーを使用して、記録されたトレースにメトリクスを接続し、エラーまたはレイテンシーの根本原因を分析します。

メトリクスは複数のイベントを集計したもので、システムが定義された範囲内で動作しているかどうかを示します。メトリクスは、エラー率やテールレイテンシーの監視、アラートの設定、パフォーマンス最適化の推進に使用できます。しかし、集約されることで、メトリクスで報告されるレイテンシーやエラーの根本原因を見つけることが難しくなります。

トレーシングを有効にすると、エラーやレイテンシーの根本原因を見つけることができます。記録されたトレースにメトリクスを接続する場合、エグゼンプラー という概念を使用します。

エグゼンプラーが設定されると、Red Hat build of Keycloak は最後に記録されたトレースをエグゼンプラーとしてメトリクスを報告します。Grafana のようなダッシュボードツールは、メトリクスダッシュボードからトレースビューにエグゼンプラーをリンクできます。

次のメトリクスは、エグゼンプラーをサポートしています。

  • http_server_requests_seconds_count (ヒストグラムを含む)
    このメトリクスの詳細は、HTTP メトリクス の章を参照してください。
  • keycloak_credentials_password_hashing_validations_total
    このメトリクスの詳細は、自己提供メトリクス の章を参照してください。
  • keycloak_user_events_total
    このメトリクスの詳細は、自己提供メトリクス の章を参照してください。

以下に、レイテンシーを可視化したヒートマップのスクリーンショットを示します。ピンク色のインジケーターのいずれかにマウスを移動すると、エグゼンプラーが表示されます。

図8.1 ヒートマップ図とエグゼンプラー

8.1. エグゼンプラーを設定する

エグゼンプラーを活用するには、次のステップを実行します。

  1. メトリクスから洞察を得る の章の説明に従って、Red Hat build of Keycloak のメトリクスを有効にします。
  2. トレーシングによる根本原因分析 の章の説明に従って、Red Hat build of Keycloak のトレーシングを有効にします。
  3. 監視システムでエグゼンプラーストレージを有効にします。

    Prometheus の場合、これは 有効化が必須のプレビュー機能 です。

  4. Prometheus ではデフォルトで有効になっていない OpenMetricsText1.0.0 プロトコルを使用して、メトリクスをスクレイピングします。

    Kubernetes 環境で PodMonitor などを使用している場合は、カスタムリソースの仕様にこれを追加することで実現できます。

    apiVersion: monitoring.coreos.com/v1
    kind: PodMonitor
    metadata:
      ...
    spec:
      scrapeProtocols:
        - OpenMetricsText1.0.0
    Copy to Clipboard Toggle word wrap
  5. トレースのリンク先となるメトリクスデータソースを設定します。

    Grafana と Prometheus を使用する場合、これは Prometheus データソースの exemplarTraceIdDestinations を設定することを意味し、これは Jaeger や Tempo などのツールが提供するトレーシングデータソースを指します。

  6. ダッシュボードでエグゼンプラーを有効にします。

    エグゼンプラーを表示する各ダッシュボードの各クエリーで、Exemplars の切り替えを有効にします。正しく設定するとダッシュボードに小さな点や星マークが表示され、これをクリックするとトレースが表示されます。

注記
  • スクレイププロトコルを指定しない場合、Prometheus はデフォルトでコンテンツネゴシエーションでそれを送信せず、Keycloak はエグゼンプラーが含まれない PrometheusText プロトコルにフォールバックします。
  • トレーシングとメトリクスを有効にしたが、リクエストサンプリングでトレースが記録されなかった場合、公開されたメトリクスにエグゼンプラーは含まれません。
  • ブラウザーでメトリクスエンドポイントにアクセスすると、コンテンツネゴシエーションによって PrometheusText 形式が返され、エグゼンプラーは表示されません。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat