- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Datadog トレーシングライブラリは、様々なライブラリのインスツルメンテーションをすぐに利用できるようサポートしています。 これらのインスツルメンテーションは、分散システムにおける作業の論理的な単位を表すスパンを生成します。 各スパンはスパンタグで構成され、システムで発生している作業単位に関する追加情報を提供します。命名規則では、スパンイベントで使用できる名前と内容を記述しています。
以下のスパンタグは、使用するインスツルメンテーションと実行する操作の種類を記述するための核となる概念です。
名前 | 型 | 説明 |
---|---|---|
language | string | スパンを生成するために使用されるクライアント SDK の言語。cpp 、dotnet 、go 、jvm 、javascript 、php 、python 、ruby のいずれかになります。 |
env | string | 実行中のプロセスの DD_ENV 環境変数、またはユーザー定義の env の値。 |
version | string | 実行中のプロセスの DD_VERSION 環境変数、またはユーザー定義の version の値。 |
span.kind | string | スパンが扱う作業単位の種類を表す文字列。server 、client 、producer 、consumer 、internal のいずれかとなります。詳細は OpenTelemetry SpanKind ドキュメントを参照してください。 |
component | string | スパンを作成したライブラリ/インテグレーションの名前。 |
ネットワーク通信に対応する作業単位を記述するために、以下のスパンタグを使用することができます。
名前 | 型 | 説明 |
---|---|---|
network.client.ip | string | インバウンド接続を開始したクライアントの IP アドレス。 |
network.destination.ip | string | アウトバウンド接続が行われる IP アドレス。 |
network.host.ip | string | ローカルホストの IP アドレス。 |
network.client.port | number | 接続を開始したクライアントのポート。 |
network.destination.port | number | アウトバウンド接続のリモートポート番号。 |
network.client.name | string | インバウンド接続を開始したクライアントのホスト名。 |
network.destination.name | string | アウトバウンド接続が行われるリモートホスト名またはそれに類するもの。 |
network.host.name | string | ローカルホスト名。 |
network.client.transport | string | インバウンド接続に使用されるトランスポートプロトコル。 |
network.destination.transport | string | アウトバウンド接続に使用されるトランスポートプロトコル。 |
HTTP クライアントとサーバーのスパンを記述するために、以下のスパンタグを使用することができます。
名前 | 説明 |
---|---|
http.status_code | タイプ: string HTTP 応答ステータスコード。 |
http.url | タイプ: string 難読化されたクエリ文字列を含む、HTTP リクエストの URL。難読化の詳細については、データセキュリティの構成を参照してください。 |
http.version | タイプ: string リクエストに使用された HTTP のバージョン。 |
http.method | タイプ: string 接続を開始したクライアントのポート。 |
http.route | タイプ: string 一致したルート (パステンプレート)。 例: /users/:userID |
http.client_ip | タイプ: string すべてのプロキシの背後にある元のクライアントの IP アドレス (既知の場合)。 X-Forwarded-For のようなヘッダーから発見される。 |
http.useragent | タイプ: string リクエストとともに受け取ったユーザーエージェントヘッダー。 |
http.request.content_length | タイプ: number リクエストペイロード本文のサイズ (バイト単位)。 |
http.response.content_length | タイプ: number レスポンスペイロード本文のサイズ (バイト単位)。 |
http.request.content_length_uncompressed | タイプ: number トランスポートデコード後の圧縮されていないリクエストペイロード本文のサイズ。 |
http.response.content_length_uncompressed | タイプ: number トランスポートデコード後の圧縮されていないレスポンスペイロード本文のサイズ。 |
http.request.headers.* | タイプ: string リクエストの HTTP ヘッダー。デフォルトでは何も収集されませんが、オプションで DD_TRACE_HEADER_TAGS を使って構成することができます。ヘッダーの収集方法については、該当するライブラリの構成を参照してください。 |
http.response.headers.* | タイプ: string レスポンスの HTTP ヘッダー。デフォルトでは何も収集されませんが、オプションで DD_TRACE_HEADER_TAGS を使って構成することができます。ヘッダーの収集方法については、該当するライブラリの構成を参照してください。 |
データベースのスパンを記述するために、以下のスパンタグを使用することができます。
名前 | 型 | 説明 |
---|---|---|
db.system | string | データベース管理システム (使用している DBMS 製品) を表す識別子。 |
db.connection_string | string | データベースへの接続に使用する接続文字列。 |
db.user | string | データベースにアクセスしたユーザー名 |
db.instance | string | 接続中のデータベースの名前。 |
db.statement | string | 実行中のデータベースステートメント。 |
db.operation | string | 実行中の操作の名前。 例: SELECT 、findAndModify 、HMSET |
db.sql.table | number | データベース名 (該当する場合) を含む、操作の対象となる主テーブルの名前。 |
db.row_count | number | クエリまたは操作の行数/結果数。 |
特定のデータベース技術に関する追加の属性は、接頭辞 db.<db.system>
を使用します。
メッセージングシステムに対応するスパンを記述するために、以下のスパンタグを使用することができます。
名前 | 型 | 説明 |
---|---|---|
messaging.system | string | メッセージングシステムの識別子。 |
messaging.destination | string | メッセージの宛先名。 |
messaging.destination_kind | string | メッセージの宛先の種類。 |
messaging.protocol | string | トランスポートプロトコルの名前。 |
messaging.protocol_version | string | トランスポートプロトコルのバージョン。 |
messaging.url | string | メッセージングシステムへの接続文字列。 |
messaging.message_id | string | メッセージングシステムがメッセージの識別子として使用する値で、文字列として表される。 |
messaging.conversation_id | string | メッセージが属する会話を識別する会話の ID で、文字列として表現される。 |
messaging.message_payload_size | number | 圧縮されていないメッセージペイロードのサイズ (バイト数)。 |
messaging.operation | string | 消費メッセージの種類を示す文字列。 例: send (プロデューサーに送るメッセージ)、receive (コンシューマーが受け取るメッセージ)、または process (以前に受け取ったメッセージをコンシューマーが処理する)。 |
messaging.consumer_id | string | メッセージを受信するコンシューマーの識別子。 |
特定のメッセージングシステムのための追加属性は、プレフィックス messaging.<messaging.system>
を使用します。
RMI や gRPC などのリモートプロシージャコールに対応するスパンを記述するために、以下のスパンタグを使用することができます。
名前 | 型 | 説明 |
---|---|---|
rpc.system | string | リモートシステムの識別子。 |
rpc.service | string | 呼び出されるサービスの名前。 |
rpc.method | string | 呼び出されるメソッドの名前。 |
スパンに関連するエラーを記述するために、以下のスパンタグを使用することができます。
名前 | 型 | 説明 |
---|---|---|
error.type | string | エラーのタイプまたは種類 (場合によってはコード)。 |
error.message | string | イベントについて簡潔にわかりやすく説明する 1 行メッセージ。 |
error.stack | string | スタックトレースまたはエラーに関する補足情報。 |
お役に立つドキュメント、リンクや記事: