OpenTelemetry 仕様では、各プラグインタイプでスパンに含めるべき属性とリソースが定義されています。しかし、レポートされるデータ量を削減するため、Application Real-Time Monitoring Service (ARMS) エージェントは、デフォルトではこれらの属性のすべてがスパンに記録されるわけではありません。[カスタム設定] ページで [OTel Spec の規則の属性を記録] スイッチを有効にすると、ARMS エージェントは各フレームワークのスパンに対応する属性を追加します。
共通属性
属性名 | 意味 | 例 | 注 |
rpc.type | 現在のスパンの呼び出しタイプ。 | 0, 40, 60 | このフィールドは ARMS 内部で使用されるものであり、変更される可能性があります。その内容は無視してかまいません。 |
serviceType | 現在のスパンのサービス タイプ。 | 1000, 1010 | このフィールドは ARMS 内部で使用されるものであり、変更される可能性があります。その内容は無視してかまいません。 |
ali.trace.flag | トレースデータを収集および報告した Alibaba Cloud 可観測性プロダクトの識別子。
| arms | このフィールドは ARMS 内部で使用されるものであり、変更される可能性があります。その内容は無視してかまいません。 |
component.name | 現在のスパンに対応するコンポーネントの名前。 | mysql, http | すべての可能な値については、「アプリケーションモニタリングのメトリック」をご参照ください。 |
hasInternalSpan | 現在のスパンに `spanKind` が `Internal` のスパンがあるかどうかを示します。 | 1 | この属性は LocalRootSpan にのみ含まれます。 |
otel.scope.name | 現在のスパンを生成したプラグインの名前。 | io.opentelemetry.jdbc | - |
otel.scope.version | 現在のスパンを生成したプラグインのバージョン番号。 | 1.28.0-SNAPSHOT | - |
root.service.id | トレースが通過する最初の ARMS アプリケーションの ID。 | aokcd***@b57c445****** | - |
sample.service.id | トレースがサンプリングされて報告されるかどうかを決定するアプリケーションの ID。 | aokcd***@b57c445****** | ARMS はさまざまなサンプリングメソッドをサポートしています。サンプリングを決定するアプリケーションは、必ずしもエントリアプリケーションではありません。詳細については、「トレースサンプリングモード (エージェントバージョン 3.2.8 以降)」をご参照ください。 |
sample.reason | トレースをサンプリングする決定が下されたときにヒットしたサンプリングポリシー。 | s4 | 詳細については、「サンプリングタグ」をご参照ください。 |
ppid | アップストリーム アプリケーションの ID。 | aokcd***@b57c445****** | - |
thread.name | スレッド名。 | http-nio-8080-exec-162 | - |
thread.id | スレッド ID。 | 12783 | - |
trace.protocol.type | 現在のトレースのトレースコンテキスト伝播プロトコル。 | EagleEye, W3C | この属性は LocalRootSpan にのみ含まれます。 |
共通リソース
リソース名 | 意味 | 例 | 注 |
host.name | アプリケーションが実行されているマシンのホスト名。 | mall-gateway-54c647a51d-db78a | バージョン 4.5.0 で追加されました。 |
agentVersion | エージェントのバージョン。 | 4.5.0_3d5f5f7 | - |
acs.arms.service.id | ARMS サービス ID。 | gauui7wh2@8a8763fbd23c898cd52*** | このフィールドは ARMS 内部で使用されるものであり、変更される可能性があります。その内容は無視してかまいません。 |
acs.arms.workspace | ARMS ワークスペース名。 | default-cms-1324351***-cn-hangzhou | このフィールドは ARMS 内部で使用されるものであり、変更される可能性があります。その内容は無視してかまいません。 |
arms.appId | ARMS アプリケーション ID。 | gauui7wh2@8a8763fbd23c898cd52*** | このフィールドは ARMS 内部で使用されるものであり、変更される可能性があります。その内容は無視してかまいません。 |
clusterId | ACK クラスター ID。 | c98cd52967df89a8e9*** | ACK 環境にのみ存在します。値は KUBERNETES_CLUSTER_ID 環境変数から取得されます。 |
ipv4 | アプリケーションの IP アドレス。 | 127.0.0.1 | - |
namespace | クラスターの名前空間。 | default | Kubernetes 環境にのみ存在します。値は KUBERNETES_POD_NAMESPACE 環境変数から取得されます。 |
workloadKind | ワークロードタイプ。 | Deployment | Kubernetes 環境にのみ存在します。値は ARMS_WORKLOADKIND 環境変数から取得されます。 |
workloadName | ワークロード名。 | mall-gateway | Kubernetes 環境にのみ存在します。値は ARMS_WORKLOADNAME 環境変数から取得されます。 |
HTTP スパンに固有の属性
属性タイプ | 属性名 | 意味 | 例 |
共通属性 | http.method | HTTP メソッド名。 | GET, POST |
http.status_code | HTTP ステータスコード。 | 200, 404, 500 | |
status | 統合 HTTP ステータスコード。 | 200, 4xx, 5xx | |
HTTP サーバースパン属性 | http.path | HTTP リクエストのパス。 | /api/v1/user |
http.route | HTTP リクエストのルート。 | /api/v1/user `http.route` は `http.path` とは異なります。たとえば、典型的な SpringMVC アプリケーションで、HTTP インターフェイスがパスパラメーター (例: `/api/v1/{userId}`) で宣言されている場合、`http.route` は `/api/v1/{userId}` を記録し、`http.path` は実際のリクエストパスを記録します。 | |
http.params | HTTP リクエストのパラメーター。これは URL の | userId=123 | |
HTTP クライアントスパン属性 | destId | HTTP リクエストのドメイン名とポート番号。 | 127.0.0.1 |
endpoint | HTTP リクエストのパス。 | /api/v1/user |
RPC 呼び出しに固有の属性
属性タイプ | 属性名 | 意味 | 例 |
共通属性 | rpc.system | RPC フレームワーク。 | Dubbo, gRPC |
rpc.service | RPC 呼び出しのサービス名。 | com.test.TestService | |
rpc.method | RPC 呼び出しのメソッド名。 | sayHello | |
destId | ピア アドレス。 | 127.0.0.1:20880 |
スケジュールされたタスクに固有の属性
属性タイプ | 属性名 | 意味 | 例 |
共通属性 | job.system | スケジュールされたタスクフレームワーク。 | ShchedulerX, XXLJob |
job.id | タスク ID。 | 2847 | |
job.name | タスク名。 | testJob | |
job.result.status | タスク実行ステータス。 | success |
メッセージング呼び出しに固有の属性
属性タイプ | 属性名 | 意味 | 例 |
共通属性 | messaging.system | メッセージング フレームワーク。 | RocketMQ, Kafka |
messaging.operation | メッセージ処理操作。 | publish, receive, process | |
messaging.message.payload_size_bytes | メッセージ サイズ。 | 137 | |
messaging.destination.name | メッセージ トピック。 | user_order | |
destId | メッセージ ブローカーのアドレス。 | rmq-********-vpc.cn-beijing.rmq.aliyuncs.com:8080 | |
endpoint | ${destId} + @ + ${messaging.destination.name} | rmq-********-vpc.cn-beijing.rmq.aliyuncs.com:8080@user_order | |
RocketMQ 固有の属性 | messaging.consume.delay_ms | メッセージ消費レイテンシ。この属性は RocketMQ でのみサポートされています。 | 128 |
Kafka 固有の属性 | messaging.kafka.destination.partition | Kafka メッセージが配置されているパーティション。 | 5 |
messaging.kafka.message.offset | パーティション内の Kafka メッセージのオフセット。 | 42 | |
messaging.kafka.message.key | Kafka メッセージ キー。 | mykey |
データベース/NoSQL
属性タイプ | 属性名 | 意味 | 例 |
共通属性 | db.name | データベース名。 これは完全な接続文字列から解析されます。接続文字列にこの情報が含まれていない場合、フィールドは空になります。 | test |
net.peer.name | データベース接続文字列からのドメイン名とポート。 | *****.mysql.rds.aliyuncs.com:3306 | |
sql | データベース文。 | SELECT * FROM user WHERE user_id=? | |
db.statement.id | データベース文の 16 文字のエンコードされた ID。 | 5a620e8cf06156a5 | |
destId | データベース名。内容は `db.name` と同じです。これは、さまざまなクエリシナリオとの互換性のための冗長な属性であり、将来のリリースで削除される予定です。 | test | |
endpoint | データベース接続文字列。内容は `net.peer.name` と同じです。これは、さまざまなクエリシナリオとの互換性のための冗長な属性であり、将来のリリースで削除される予定です。 | *****.mysql.rds.aliyuncs.com:3306 | |
out.ids | データベース接続文字列。内容は `net.peer.name` と同じです。これは、さまざまなクエリシナリオとの互換性のための冗長な属性であり、将来のリリースで削除される予定です。 | *****.mysql.rds.aliyuncs.com:3306 | |
opType | データベース操作タイプ。 | SELECT | |
response.size | データベースクエリ応答のサイズ (バイト単位)。 | 54 | |
MongoDB 属性 | db.mongodb.collection | MongoDB 操作のコレクションの名前。 | user |
Redis 属性 | redis.command.key | Redis でアクセスされるキー。 | key |