スパンプロセッサー 🔗
スパンプロセッサーは、以下のことを可能にします:
属性に基づいてスパン名を修正します。
スパン名からスパン属性を抽出します。
スパンのステータスを変更します。
オプションで、スパンを含めることも除外することもできます。詳しくは GitHub のフィルターリングレポ Include/Exclude Filtering を参照してください。
サポートされるパイプラインタイプは traces
です。詳細は パイプラインでデータを処理する を参照してください。
はじめに 🔗
以下の手順に従って、コンポーネントの設定とアクティベーションを行ってください:
Splunk Distribution of OpenTelemetry Collector をホストまたはコンテナプラットフォームにデプロイします:
次のセクションで説明するように、スパンプロセッサーを設定します。
Collector を再起動します。
サンプル構成 🔗
スパンプロセッサーを有効にするには、以下の例に示すように、設定ファイルの processors
セクションに span
を追加します:
resource:
span:
name:
status:
プロセッサーは以下の動作をサポートします:
name
:スパン内の属性名を変更します。status
:スパンのステータスを変更します。
次に、設定ファイルのサービスパイプラインセクションにプロセッサーを追加します。例:
service:
pipelines:
traces:
processors: [span]
span
プロセッサーを使用します。 🔗
スパンに名前を付ける 🔗
スパンに名前を付けるには、以下の設定を使用します:
from_attributes
。必須。設定で指定された順序で新しい名前を作成するために使用されるキーの属性値。separator
:値を分割するための文字列。
注釈
リネームが、属性プロセッサー によって変更されるアトリビュートに依存する場合、パイプラインのアトリビュートプロセッサーの後にスパンプロセッサーが指定されていることを確認します。
span:
name:
# from_attributes represents the attribute keys to pull the values from to generate the new span name.
from_attributes: [<key1>, <key2>, ...]
# Separator is the string used to concatenate various parts of the span name.
separator: <value>
例 🔗
次の例を参照してください:
span:
name:
from_attributes: ["db.svc", "operation"]
separator: "::"
スパン名から属性を抽出する 🔗
span
プロセッサーは、スパン名とマッチする正規表現のリストを受け取り、その中から部分式に基づいて属性を抽出します。これは to_attributes
セクションで指定される必要があります。
スパン名から属性を抽出するには、以下の設定を使用します:
rules
。必須。スパン名から属性値を抽出するルールのリスト。スパン名の値は、抽出された属性名で置き換えられます。リストの各規則は正規表現パターン文字列です。スパン名は正規表現と照合され、正規表現がマッチした場合、正規表現のすべての名前付き部分式が属性として抽出され、スパンに追加されます。
それぞれの部分式名が属性名となり、部分式にマッチした部分が属性値となります。スパン名の一致した部分は、抽出された属性名に置き換えられます。
もしその属性が既にスパンに存在していれば、それらは上書きされます。
この処理は、指定された順序で、すべてのルールに対して繰り返されます。後続の各ルールは、前のルールの処理後の出力であるスパン名に対して機能します。
break_after_match
。必須。デフォルトではfalse
です。最初の一致の後でルールの処理を停止するかどうかを指定します。false
の場合、ルール処理は変更されたスパン名に対して引き続き実行されます。
span/to_attributes:
name:
to_attributes:
rules:
- regexp-rule1
- regexp-rule2
- regexp-rule3
...
break_after_match: <true|false>
例 🔗
次の例を参照してください:
# Let's assume input span name is /api/v1/document/12345678/update
# Applying the following results in output span name /api/v1/document/{documentId}/update
# and will add a new attribute "documentId"="12345678" to the span.
span/to_attributes:
name:
to_attributes:
rules:
- ^\/api\/v1\/document\/(?P<documentId>.*)\/update$
スパンのステータスを設定する 🔗
スパンのステータスを設定するには、以下の設定を参照してください:
code
。必須。スパンの状態を表します。受け入れられる値:Unset
、Error
、Ok
。description
。コード.``Error`` にのみ使用されます。
例 🔗
次の例を参照してください:
# Set status allows to set specific status for a given span. Possible values are
# Ok, Error and Unset as per
# https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/api.md#set-status
# The description field allows to set a human-readable message for errors.
span/set_status:
status:
code: Error
description: "some error description"
設定 🔗
以下の表は、スパンプロセッサーの設定オプションを示しています:
トラブルシューティング 🔗
Splunk Observability Cloudをご利用のお客様で、Splunk Observability Cloudでデータを確認できない場合は、以下の方法でサポートを受けることができます。
Splunk Observability Cloudをご利用のお客様
Submit a case in the Splunk Support Portal .
Contact Splunk Support .
見込み客および無料トライアルユーザー様
Splunk Answers のコミュニティサポートで質問し、回答を得る
Splunk #observability ユーザーグループの Slack チャンネルに参加して、世界中の顧客、パートナー、Splunk 社員とのコミュニケーションを図る。参加するには、Get Started with Splunk Community マニュアルの チャットグループ を参照してください。