このトピックでは、Simple Log Serviceでサポートされているトレースデータ形式について説明します。
Simple Log Serviceは、OpenTelemetry trace 1.0で定義されているトレースデータ形式と互換性があります。 OpenTelemetry、Jaeger、Zipkin、OpenCensus、SkyWalkingなどのプロトコルを使用してトレースデータを書き込む場合、Simple Log ServiceはトレースデータをOpenTelemetryで定義されたデータ形式に自動的にマッピングします。 他のトレースデータの場合は、データ変換機能を使用して、データをSimple Log Serviceでサポートされているデータ形式にマッピングできます。
Rawトレースデータ
生のトレースデータは、{instance}-tracesという名前のLogstoreに収集されます。 次の表に、データ収集時に定義されるフィールドを示します。
項目 | データ型 | 必須 | 説明 | 例 |
ホスト | String | 課金されません | リソースが存在するホストのホスト名。 値は、リソースフィールドのhost.nameから抽出されます。 | テストホスト |
サービス | String | 課金されます | リソースのサービス名。 値は、リソースフィールドのservice.nameから抽出されます。 | テストサービス |
リソース | JSON Object | 課金されません | その他のリソース関連フィールド。 ホストフィールドとサービスフィールドもリソース関連のフィールドです。 例: プロセスID、プロセス名、ポッド名。 詳細については、「リソース意味規則」をご参照ください。 | {"k8s.pod.name":"xxxx", "k8s.pod.nameスペース":"kube-system"} |
otlp.name | String | 課金されません | トレースSDKの名前。 | go-sdk |
otlp.version | String | 課金されません | Trace SDKのバージョン。 | v1.0.0 |
name | String | 課金されます | スパンの名前。 | /取得 /314159 |
種類 | String | 課金されません | スパンのタイプ。 例: クライアントとサーバー。 詳細については、「SpanKind」をご参照ください。 | サーバー |
traceID | String | 課金されます | トレースのID。 値は16進数の文字列です。 | 0123456789abcde0123456789abcde |
spanID | String | 課金されます | スパンのID。 値は16進数の文字列です。 | 0123456789abcde |
parentSpanID | String | 課金されます | 親スパンのID。 値は16進数の文字列です。 | 0123456789abcde |
リンク | JSON配列 | 課金されません | トレースデータに関連付けられているその他のスパン。 詳細については、「リンクの指定」をご参照ください。 | [{"TraceID" : "abc", "SpanId" : "abc", "TraceState" : "" ", " Attributes " : { " k " : " v " } }] |
ログ | JSON配列 | 課金されません | トレースデータに関連付けられているログおよびイベント情報。 詳細については、「イベントの追加」をご参照ください。 | なし |
traceState | String | 課金されません | World Wide Web Consortium (W3C) 仕様で定義されているトレース状態。 詳細については、「W3Cトレースコンテキストの仕様」をご参照ください。 | なし |
start | INT | 課金されます | 開始時刻 この値は UNIX タイムスタンプです。 単位: ナノ秒。 | 1686294916826000000 |
終了 | INT | 課金されません | 終了時刻です。 この値は UNIX タイムスタンプです。 単位: ナノ秒。 | 1686294924827000000 |
期間 | INT | 課金されます | レイテンシ。 値は、開始フィールドと終了フィールドの差です。 単位: ナノ秒。 | 8001000 |
属性 | JSON Object | 課金されます | HTTPリクエストのURLやステータスコードなど、スパンに関する属性情報。 詳細については、「属性名」をご参照ください。 | {"custom":"custom","host.hostname":"myhost","my-label":"myapp-type","null-value":"","service.name":"myapp"} |
statusCode | String | 課金されます | HTTPリクエストのステータスコード。 有効な値: OK、ERROR、およびUNSET。 値UNSETは値OKに等しい。 | ERROR |
statusMessage | String | 課金されません | HTTPリクエストのステータスメッセージ。 | スタックオーバーフロー |
ディメンション間の呼び出し関係のデータ
トレースデータは、次元間の呼び出し関係のデータを含む。 呼び出し関係のデータは計算後に生成され、{instance}-traces-depsという名前のLogstoreに保存されます。 次の表に、データのフィールドを示します。
項目 | データ型 | 説明 |
バージョン | String | 異なる次元間の呼び出し関係。 有効な値:
|
child_host | String | 呼び出し先のホスト情報。 このフィールドは、versionがservice_name_hostまたはservice_name_host_resourceの場合にのみ使用できます。 |
child_name | String | 呼び出し先のメソッド。 このフィールドは、versionがservice_name、service_name_host、またはservice_name_host_resourceの場合にのみ使用できます。 |
child_resource | JSON Object | 呼び出し先のリソース情報。 このフィールドは、versionがservice_name_host_resourceの場合にのみ使用できます。 |
child_service | String | 呼び出し先のサービス名。 |
child_type | JSON Object | 呼び出し先の補足情報。 |
inner_パーセンタイル | String | パーセンタイル。 Simple Log Serviceは、inner_percentile関数を使用してデータを解析し、パーセンタイルを取得します。 |
max_latency | Double | サービスのメソッドを呼び出すための最大レイテンシ。 |
min_latency | Double | サービスのメソッドを呼び出すための最小レイテンシ。 |
n_status_fail | Double | サービスのメソッドの呼び出しに失敗した回数。 |
n_status_succ | Double | サービスのメソッドが正常に呼び出された回数。 |
parent_host | JSON配列 | 呼び出し元のホスト情報。 このフィールドは、versionがservice_name_hostまたはservice_name_host_resourceの場合にのみ使用できます。 |
parent_name | JSON配列 | 呼び出し元のメソッド。 このフィールドは、versionがservice_name、service_name_host、またはservice_name_host_resourceの場合にのみ使用できます。 |
parent_resource | JSON Object | 呼び出し元のリソース情報。 このフィールドは、versionがservice_name_host_resourceの場合にのみ使用できます。 |
parent_service | INT | 呼び出し元のサービス名。 このフィールドは、versionがservice、service_name、またはservice_name_host_resourceの場合にのみ使用できます。 |
parent_type | INT | 発信者の補足情報。 |
sum_latency | INT | サービスのメソッドを呼び出すための累積レイテンシ。 |
集計メトリックの中間結果データ
トレースデータは、集約されたメトリックの中間結果データを含む。 集計されたメトリックの中間結果データは、計算後に生成され、{instance}-traces-metricsという名前のLogstoreに保存されます。 次の表に、データのフィールドを示します。
項目 | データ型 | 説明 |
ホスト | STRING | スパンのホスト値。 |
inner_パーセンタイル | STRING | パーセンタイル。 Simple Log Serviceは、inner_percentile関数を使用してデータを解析し、パーセンタイルを取得します。 |
max_latency | Double | サービスのメソッドを呼び出すための最大レイテンシ。 |
min_latency | Double | サービスのメソッドを呼び出すための最小レイテンシ。 |
n_status_fail | INT | サービスのメソッドの呼び出しに失敗した回数。 |
name | STRING | スパンの名前。 |
リソース | JSON Object | スパンのリソース情報。 |
サービス | STRING | スパンのサービス名。 |
sum_latency | Double | サービスのメソッドを呼び出すための累積レイテンシ。 ほとんどの場合、このフィールドは合計フィールドと一緒に使用され、平均レイテンシが計算されます。 |
合計 | INT | サービスのメソッドが呼び出された合計回数。 |
タイプ | JSON Object | スパンの補足情報。 ほとんどの場合、次の項目が含まれています。
|
バージョン | String | メトリックのタイプ。 値はmetric_infoとして固定されています。 |