rights reserved. 20 ptrace: パイプライン内トレース型 Traces ResourceSpans ScopeSpans Span Status SpanEvent SpanLink 1 n n n n n 1 1 1 1 トレース全体 同⼀のリソースからのスパン(例: サービス、ホスト、コンテナ) 同⼀のスコープからのスパン(例: ライブラリ、SDK)
rights reserved. 23 pmetric: パイプライン内メトリクス型 Metrics ResourceMetrics ScopeMetrics 1 n n n 1 1 1 1 1 1 Metric Histogram Gauge Sum HistogramDataPoint NumberDataPoint 1 n n Exemplar 1 1 同⼀のリソースからのメトリクス(例: サービス、ホスト、コンテナ) 同⼀のスコープからのメトリクス(例: ライブラリ、SDK) メトリクス(名前、単位、メトリクス種類で定義) トレースとメトリクスの紐づけ n 1 1 メトリクス全体
rights reserved. 28 pprofile: パイプライン内プロファイル型(ベータ) Profiles ResourceProfiles ScopeProfiles Profile 1 n n n 1 1 1 プロファイル全体 同⼀のリソースからのプロファイル(例: サービス、ホスト、コンテナ) 同⼀のスコープからのプロファイル(例: ライブラリ、SDK) プロファイル Sample Label n n 1 サンプル ラベル(ここでTraceIDやSpanIDを相関させる)
rights reserved. 37 参考: パイプライン⽤構造体の実装 // A node-based representation of a pipeline configuration. type pipelineNodes struct { // Use map to assist with deduplication of connector instances. receivers map[int64]graph.Node // The node to which receivers emit. Passes through to processors. // Easily accessible as the first node in a pipeline. *capabilitiesNode // The order of processors is very important. Therefore use a slice for processors. processors []graph.Node // Emits to exporters. *fanOutNode // Use map to assist with deduplication of connector instances. exporters map[int64]graph.Node }