RPCに関するセマンティック規約

この記事は英語の原文を日本語に翻訳したものです。原文: https://opentelemetry.io/docs/specs/semconv/rpc/

翻訳元: open-telemetry/semantic-conventions v1.44.0(コミット e10a930

ステータス: Release Candidate(特に断りがない限り)

この文書では、リモートプロシージャコール(RPC、「リモートメソッド呼び出し」(RMI)とも呼ばれます)に関するセマンティック規約を定義します。

[!IMPORTANT] この文書のv1.37.0 以前のバージョンを使っている既存のRPC計装は、次に従うべきです。

  • 既存のメジャーバージョンにおいて、デフォルトで発行するRPC規約のバージョンを変更してはなりません(SHOULD NOT)。 規約には、属性、メトリクス名、スパン名、計測単位などが含まれますが、これらに限定されません。
  • 既存のメジャーバージョンにおいて、カテゴリー別の値をカンマ区切りで列挙するリストとして環境変数 OTEL_SEMCONV_STABILITY_OPT_IN を導入すべきです(SHOULD) (例: http、databases、rpc)。値の一覧は次のとおりです。
    • rpc - 安定版のRPC規約を発行し、それまで計装が発行していた実験的なRPC規約の発行を停止します。
    • rpc/dup - 実験的な規約と安定版の規約の両方を発行し、安定版セマンティック規約への段階的な移行を可能にします。
    • これらの値がいずれも指定されていない場合のデフォルトの動作は、計装がそれまで発行していた古い実験的なRPC規約のバージョンを発行し続けることです。
    • 注: 両方の値が存在する場合、rpc/duprpc よりも優先されます。
  • 両方の規約セットを発行し始めてから少なくとも6か月間は、既存のメジャーバージョンを(少なくともセキュリティパッチの適用という形で)維持すべきです(SHOULD)。
  • 次のメジャーバージョンでは、この環境変数を削除し、安定版のRPC規約のみを発行してもかまいません(MAY)。

RPCに関するセマンティック規約は、次のシグナルについて定義されています。

  • RPCスパン: RPCクライアントとサーバーのスパンに関するセマンティック規約。
  • RPCメトリクス: RPCのメトリクスに関するセマンティック規約。
  • RPC例外: RPCクライアントとサーバーの例外に関するセマンティック規約。

技術固有のセマンティック規約は、次のRPCシステムについて定義されています。

  • Connect: Connect RPCに関するセマンティック規約。
  • Dubbo: Apache Dubboに関するセマンティック規約。
  • gRPC: gRPCに関するセマンティック規約。
  • JSON-RPC: JSON-RPCに関するセマンティック規約。

非安定版から安定版の規約への移行を助けるガイドについては、移行ガイドを参照してください。