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

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

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

ステータス: Development

この文書は、セッションを追跡する際にクライアント側アプリケーションに適用するセマンティック規約を定義します。

セッションは、アプリケーションによって実行されるすべての活動と、エンドユーザーによって実行される操作を包含する期間として定義されます。

したがって、セッションはクライアントアプリケーションによってそのセッションの期間中に発行されるログ、イベント、スパンの集合として表現されます。各セッションには一意な識別子が割り当てられ、これはそのセッションのライフサイクル中に生成されるログ、イベント、スパンの属性として含まれます。

セッションが、通常はユーザーの非アクティブ状態やセッションタイムアウトによって、そのライフサイクルの終わりに達すると、新しいセッション識別子が割り当てられます。以前のセッション識別子は、テレメトリーバックエンドが2つのセッションをリンクできるように、計装によって提供されることがあります(下記のセッション開始イベントを参照してください)。

属性

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
session.idDevelopmentOpt-Instringセッションを識別する一意なID。00112233-4455-6677-8899-aabbccddeeff
session.previous_idDevelopmentOpt-Instringこのユーザーの、判明している場合の直前の session.id00112233-4455-6677-8899-aabbccddeeff

セッションイベント

Event: session.start

Status: Development

イベント名は session.start でなければなりません(MUST)。

新しいセッションが開始されたことを示し、必要に応じて以前のセッションへのリンクを持ちます。

ユーザーセッション中のユーザー行動を追跡する計装では、セッションが作成されるたびに session.start イベントを発行しなければなりません(MUST)。以前のセッションの継続として新しいセッションが作成される場合、session.previous_id をそのイベントに含めるべきです(SHOULD)。session.idsession.previous_id の値は異なっていなければなりません(MUST)。 session.start イベントが session.idsession.previous_id の両方のフィールドを含む場合、そのイベントは以前のセッションが終了したことを示します。session.previous_id にあるセッションIDが明示的な session.end イベントによってまだ終了していない場合、利用者はこの継続イベントを session.end(session.previous_id)session.start(session.id) に意味的に同等なものとして扱うべきです(SHOULD)。

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
session.idDevelopmentRequiredstring新しく開始されたセッションのID。00112233-4455-6677-8899-aabbccddeeff
session.previous_idDevelopmentConditionally Required [1]stringこのユーザーの、判明している場合の直前の session.id00112233-4455-6677-8899-aabbccddeeff

[1] session.previous_id: 新しいセッションが以前のセッションの継続として作成される場合、session.previous_id をそのイベントに含めるべきです(SHOULD)。session.idsession.previous_id の属性は異なる値を持たなければなりません(MUST)。

Event: session.end

Status: Development

イベント名は session.end でなければなりません(MUST)。

セッションが終了したことを示します。

ユーザーセッション中のユーザー行動を追跡する計装では、セッションが終了するたびに session.end イベントを発行すべきです(SHOULD)。セッションが終了して新しいセッションとして継続する場合、このイベントは session.start イベントより前に発行すべきです(SHOULD)。

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
session.idDevelopmentRequiredstring終了するセッションのID。00112233-4455-6677-8899-aabbccddeeff