検索

21.4. サンプリング

download PDF

サンプラーは、トレースを破棄するか転送するかを決定し、コレクターに送信される収集されるトレースの数を制限することで、オーバーヘッドを効果的に減らします。これは、リソースの消費を管理するのに役立ちます。これにより、単一の要求およびパフォーマンスの低下の可能性をトレースする大容量のストレージコストが回避されます。

警告

実稼働環境を使用する環境では、インフラストラクチャーコストを最小限に抑えるようにサンプリングを適切に設定する必要があります。

Red Hat build of Keycloak は、以下のような複数の組み込み OpenTelemetry サンプラーをサポートします。

  • always_on
  • always_off
  • traceidratio (デフォルト)
  • parentbased_always_on
  • parentbased_always_off
  • parentbased_traceidratio

使用されるサンプラーは、tracing-sampler-type プロパティーで変更できます。

21.4.1. デフォルトの sampler

Red Hat ビルドの Keycloak のデフォルトのサンプラーは traceidratio で、tracing-sampler-ratio プロパティーを介して設定可能な指定された比率に基づいてトレースサンプリングのレートを制御します。

21.4.1.1. トレース比率

デフォルトのトレース比率は 1.0 です。これは、トレースがすべてサンプリングされ、コレクターに送信されることを意味します。比率は、範囲のフローティング番号です (0,1]。たとえば、比率が 0.1 の場合、トレースの 10% のみがサンプリングされます。

警告

実稼働環境環境の場合、トレース比率は、トレースストアインフラストラクチャーの大規模なコストを防ぎ、パフォーマンスのオーバーヘッドを回避するためにトレース比率を少なくする必要があります。

21.4.1.2. 理由

サンプラーは、parentbased_traceidratio サンプラーを使用するかのように、親スパンに対して行われる決定に関係なく、サンプルスパンの現在の比率に基づいて独自のサンプリング決定を行います。

parentbased_traceidratio サンプラーは、親スパンと子スパン間のサンプリングの一貫性を保証するため、優先のデフォルトタイプである可能性があります。具体的には、親スパンがサンプリングされている場合、その子スパンはすべてサンプリングされます。すべてのものに対して同じサンプリングの意思決定が行われます。これは、すべてのスパンをまとめ、不完全なトレースの保存を防ぐのに役立ちます。

ただし、特定のセキュリティーリスクが発生すると、DoS 攻撃につながる可能性があります。外部呼び出し元はトレースヘッダーを操作することができ、親スパンを挿入でき、トレースストアを圧倒することができます。適切な HTTP ヘッダー(特に トレース状態)のフィルタリングと、呼び出し元の信頼に関する適切な測定を評価する必要があります。

詳細は、W3C Trace コンテキスト のドキュメント を参照してください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.