概要
Datadog トレーシングライブラリは、様々なライブラリのインスツルメンテーションをすぐに利用できるようサポートしています。
これらのインスツルメンテーションは、分散システムにおける作業の論理的な単位を表すスパンを生成します。
各スパンはスパンタグを含み、システムで発生している作業単位に関する追加情報を提供します。命名規則では、スパンイベントで使用できる名前と内容を記述しています。
スパンタグの命名規則
システムで行われている作業を記述するために、さまざまなスパンタグがあります。例えば、以下のドメインを記述するスパンタグがあります。
- Reserved: すべてのスパンに常に存在する属性。
- Core: 使用されるインスツルメンテーションと操作の種類。
- Network communications: ネットワーク通信に対応した作業単位。
- HTTP requests: HTTPクライアントとサーバーのスパン。
- Database: データベースのスパン。
- Message queue: メッセージングシステムのスパン。
- Remote procedure calls: RMI や gRPC などのリモートプロシージャコールに対応するスパン。
- Errors: スパンに関連するエラー。
詳しくはデフォルト標準属性を参照してください。
スパンタグとスパン属性
スパンタグとスパン属性は似ていますが異なる概念です。
スパンタグ
スパンタグは、スパン周辺のコンテキストです。例えば、以下のようなものがあります。
- ホストタグ:
hostname
、availability-zone
、cluster-name
- コンテナタグ:
container_name
、kube_deployment
、pod_name
タグは通常、ホスト、コンテナ、サービスカタログから取得したタグなど、他のデータソースから補完されます。これらのタグは、コンテキストを記述するためにスパンに追加されます。例えば、タグは、スパンの出所であるホストやコンテナのプロパティや、スパンが発信されるサービスのプロパティを記述します。
Datadog でスパンタグを見つけるには、Trace サイドパネルの Infrastructure タブに移動します。
スパン属性
スパン属性は、スパンの内容です。例えば、以下のようなものがあります。
http.url
http.status_code
error.message
スパン属性をクエリするには、検索ボックスで @
文字の後に属性名を続けます。例えば、@http.url
です。
Datadog でスパン属性を見つけるには、Trace サイドパネルの Info タブに移動します。
その他の参考資料