Zerobus 取り込みの OpenTelemetry テーブル リファレンス

Important

この機能は ベータ版です

このページでは、 Zerobus Ingest OTLP で使用される OpenTelemetry (OTLP) テーブル スキーマとデータ マッピングの参照情報を提供します。

テーブル スキーマ

OTLP データが到着すると、Zerobus Ingest は、入れ子になった OTLP リソース/スコープ/レコード階層の各レコードを、非正規化されたフラットな行に変換します。 リソース属性とインストルメンテーション スコープ情報は各行に直接埋め込まれており、データは結合なしですぐにクエリ可能になります。

すべての属性フィールド (attributesresource.attributesinstrumentation_scope.attributes、ログの body 、メトリックの metadata ) は、 VARIANT 列として格納されます。 VARIANT は、元の型を保持しながら JSON データを格納する Delta Lake の半構造化型です。

各レコードは、Databricks 固有のフィールドで拡張されます。

フィールド 説明 情報源
record_id 一意の識別と時間順の並べ替えのためのシステム生成 ID。 時間に基づいて生成される
time Unix エポックからのタイムスタンプ (マイクロ秒単位)。 start_time_unix_nano (スパン) またはtime_unix_nano (ログ、メトリック) から派生したタイムスタンプ (マイクロ秒単位)
date 時間範囲のフィルター処理を効率的に行う日付パーティション列。 time から派生
service_name OTel セマンティック規則で定義されているように、サービス名による効率的なフィルター処理を行う最上位レベルの列。 から抽出 resource.attributes["service.name"]

スキーマ マッピング

Zerobus 取り込みでは、以下に説明するように OTLP データが Delta テーブル列にマップされます。

非 正規 化

OTLP プロトコルでは、テレメトリ データはこのように入れ子になっています。

ResourceSpans (or ResourceLogs, ResourceMetrics)
  └── Resource (attributes, schema_url)
       └── ScopeSpans (or ScopeLogs, ScopeMetrics)
            └── InstrumentationScope (name, version, attributes)
                 └── Span (or LogRecord, Metric)

Zerobus 取り込みでは、各行に完全なコンテキストが含まれるように、この階層がフラット化されます。

  • resource:リソース属性 ( VARIANT) と dropped_attributes_countを含む構造体。
  • resource_schema_url: 外側の ResourceSpans、ResourceLogs、または ResourceMetrics のスキーマ URL。
  • instrumentation_scope: スコープ名、バージョン、属性 ( VARIANT)、および dropped_attributes_countを含む構造体。
  • span_schema_url / log_schema_url / metric_schema_url: 外側の ScopeSpans、ScopeLogs、または ScopeMetrics のスキーマ URL。

ID エンコード

trace_idspan_id、および parent_span_id は、小文字の 16 進エンコード文字列として格納されます。

  • trace_id: 32 文字の 16 進文字列 (16 バイト)
  • span_id: 16 文字の 16 進文字列 (8 バイト)

列挙型のエンコード

列挙値 (kindstatus.codeaggregation_temporalityseverity_number) は、OTLP 仕様で定義されている文字列名として格納されます。 例: SPAN_KIND_SERVERSTATUS_CODE_OKAGGREGATION_TEMPORALITY_DELTA

次のステップ