From 5f6587b8fb141758f17121b0156e5bed4d14f844 Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Wed, 15 May 2024 15:17:37 -0700 Subject: [PATCH 01/17] add session.change event --- .chloggen/session_change_event.yaml | 22 ++++++++++++++++++++++ docs/general/session.md | 12 +++++++++++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100755 .chloggen/session_change_event.yaml diff --git a/.chloggen/session_change_event.yaml b/.chloggen/session_change_event.yaml new file mode 100755 index 0000000000..18259bfbd9 --- /dev/null +++ b/.chloggen/session_change_event.yaml @@ -0,0 +1,22 @@ +# Use this changelog template to create an entry for release notes. +# +# If your change doesn't affect end users you should instead start +# your pull request title with [chore] or use the "Skip Changelog" label. + +# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' +change_type: 'enhancement' + +# The name of the area of concern in the attributes-registry, (e.g. http, cloud, db) +component: 'session' + +# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). +note: Add new experimental `session.change` event + +# Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists. +# The values here must be integers. +issues: [] + +# (Optional) One or more lines of additional information to render under the primary note. +# These lines will be padded with 2 spaces and then inserted directly into the document. +# Use pipe (|) for multiline entries. +subtext: diff --git a/docs/general/session.md b/docs/general/session.md index 3c4d50209f..e60fd2c351 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -13,7 +13,7 @@ the Logs, Events, and Spans generated during the Session's lifecycle. When a session reaches end of life, typically due to user inactivity or session timeout, a new session identifier will be assigned. The previous session identifier may be provided by the instrumentation so that telemetry -backends can link the two sessions. +backends can link the two sessions (see [Session Change Event](#session_change_event) below). ## Attributes @@ -35,4 +35,14 @@ backends can link the two sessions. +## Session Change Event + +![Experimental](https://img.shields.io/badge/-experimental-blue) + +When a session changes (due to time-based expiry or another mechanism), an event MAY be emitted. + +The emitted event that represents a session change MUST have the `event.name=session.change`. +The event body MUST be empty and the attributes MUST include both the `session.id` and `session.previous_id` +attributes, as described above. The values MUST be different. + [DocumentStatus]: https://opentelemetry.io/docs/specs/otel/document-status From 89f21fdf5133040e67c2b8968be4949492ad8323 Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Wed, 15 May 2024 15:19:03 -0700 Subject: [PATCH 02/17] add pr number --- .chloggen/session_change_event.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.chloggen/session_change_event.yaml b/.chloggen/session_change_event.yaml index 18259bfbd9..1fae2e99af 100755 --- a/.chloggen/session_change_event.yaml +++ b/.chloggen/session_change_event.yaml @@ -14,7 +14,7 @@ note: Add new experimental `session.change` event # Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists. # The values here must be integers. -issues: [] +issues: [1042] # (Optional) One or more lines of additional information to render under the primary note. # These lines will be padded with 2 spaces and then inserted directly into the document. From 1830aea26a46370131455ca949c07d4f1e8d9842 Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Wed, 15 May 2024 15:23:06 -0700 Subject: [PATCH 03/17] fix anchor --- docs/general/session.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/session.md b/docs/general/session.md index e60fd2c351..754dd348ac 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -13,7 +13,7 @@ the Logs, Events, and Spans generated during the Session's lifecycle. When a session reaches end of life, typically due to user inactivity or session timeout, a new session identifier will be assigned. The previous session identifier may be provided by the instrumentation so that telemetry -backends can link the two sessions (see [Session Change Event](#session_change_event) below). +backends can link the two sessions (see [Session Change Event](#session-change-event) below). ## Attributes From c269ce99dcda1160d56a1adf87549acc761bd9be Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Wed, 15 May 2024 15:24:58 -0700 Subject: [PATCH 04/17] remove space --- docs/general/session.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/session.md b/docs/general/session.md index 754dd348ac..1150338c6c 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -39,7 +39,7 @@ backends can link the two sessions (see [Session Change Event](#session-change-e ![Experimental](https://img.shields.io/badge/-experimental-blue) -When a session changes (due to time-based expiry or another mechanism), an event MAY be emitted. +When a session changes (due to time-based expiry or another mechanism), an event MAY be emitted. The emitted event that represents a session change MUST have the `event.name=session.change`. The event body MUST be empty and the attributes MUST include both the `session.id` and `session.previous_id` From 684b9547a9eee65c528a62b7a0cae7c54596a05c Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Wed, 29 May 2024 09:48:38 -0700 Subject: [PATCH 05/17] add session start and end events --- docs/general/session.md | 41 ++++++++++++++++++++++++++++++++--------- 1 file changed, 32 insertions(+), 9 deletions(-) diff --git a/docs/general/session.md b/docs/general/session.md index 1150338c6c..71416d7262 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -24,10 +24,10 @@ backends can link the two sessions (see [Session Change Event](#session-change-e -| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | -|---|---|---|---|---|---| -| [`session.id`](/docs/attributes-registry/session.md) | string | A unique id to identify a session. | `00112233-4455-6677-8899-aabbccddeeff` | `Opt-In` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`session.previous_id`](/docs/attributes-registry/session.md) | string | The previous `session.id` for this user, when known. | `00112233-4455-6677-8899-aabbccddeeff` | `Opt-In` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | +|---------------------------------------------------------------|--------|------------------------------------------------------|----------------------------------------|-------------------------------------------------------------------------------------------------------|------------------------------------------------------------------| +| [`session.id`](/docs/attributes-registry/session.md) | string | A unique id to identify a session. | `00112233-4455-6677-8899-aabbccddeeff` | `Opt-In` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`session.previous_id`](/docs/attributes-registry/session.md) | string | The previous `session.id` for this user, when known. | `00112233-4455-6677-8899-aabbccddeeff` | `Opt-In` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -35,14 +35,37 @@ backends can link the two sessions (see [Session Change Event](#session-change-e -## Session Change Event +## Session Events + +### Session Start Event ![Experimental](https://img.shields.io/badge/-experimental-blue) -When a session changes (due to time-based expiry or another mechanism), an event MAY be emitted. +`event.name`=`session.start` + +For instrumentation that tracks users behavior during user sessions, a `session.start` event MUST be emitted +every time a session is created. When a new session is created as a continuation of a prior session, +the `session.previous_id` SHOULD be included in the event. The values of `session.id` and `session.previous_id` +MUST be different. + +| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | +|---------------------------------------------------------------|--------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------| +| [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being started. | `Required` | +| [`session.previous_id`](/docs/attributes-registry/session.md) | string | The previous `session.id` for this user, when known. | `Conditionally Required` | + + +### Session End Event + +![Experimental](https://img.shields.io/badge/-experimental-blue) + +`event.name`=`session.end` + +For instrumentation that tracks users behavior during user sessions, a `session.end` event SHOULD be emitted +every time a session ends. When a session ends and continues as a new session, this event SHOULD also be +emitted prior to the `session.start` event. -The emitted event that represents a session change MUST have the `event.name=session.change`. -The event body MUST be empty and the attributes MUST include both the `session.id` and `session.previous_id` -attributes, as described above. The values MUST be different. +| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | +|---------------------------------------------------------------|--------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------| +| [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being started. | `Required` | [DocumentStatus]: https://opentelemetry.io/docs/specs/otel/document-status From 0d5c36701dd3dbaefad3837afb552e49b05feb7b Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Wed, 29 May 2024 09:51:12 -0700 Subject: [PATCH 06/17] update changelog --- ...session_change_event.yaml => session_start_end_event.yaml} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename .chloggen/{session_change_event.yaml => session_start_end_event.yaml} (91%) diff --git a/.chloggen/session_change_event.yaml b/.chloggen/session_start_end_event.yaml similarity index 91% rename from .chloggen/session_change_event.yaml rename to .chloggen/session_start_end_event.yaml index 1fae2e99af..1dd2bf020d 100755 --- a/.chloggen/session_change_event.yaml +++ b/.chloggen/session_start_end_event.yaml @@ -10,11 +10,11 @@ change_type: 'enhancement' component: 'session' # A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). -note: Add new experimental `session.change` event +note: Add new experimental `session.start` and `session.end` events # Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists. # The values here must be integers. -issues: [1042] +issues: [1091] # (Optional) One or more lines of additional information to render under the primary note. # These lines will be padded with 2 spaces and then inserted directly into the document. From fcbfd70f9d7e662cdbb8f64a50cca3319ccee9a7 Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Wed, 29 May 2024 10:03:11 -0700 Subject: [PATCH 07/17] linted --- docs/general/session.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/docs/general/session.md b/docs/general/session.md index 71416d7262..eacc4b848c 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -13,7 +13,7 @@ the Logs, Events, and Spans generated during the Session's lifecycle. When a session reaches end of life, typically due to user inactivity or session timeout, a new session identifier will be assigned. The previous session identifier may be provided by the instrumentation so that telemetry -backends can link the two sessions (see [Session Change Event](#session-change-event) below). +backends can link the two sessions (see [Session Start Event](#session-start-event) below). ## Attributes @@ -45,15 +45,14 @@ backends can link the two sessions (see [Session Change Event](#session-change-e For instrumentation that tracks users behavior during user sessions, a `session.start` event MUST be emitted every time a session is created. When a new session is created as a continuation of a prior session, -the `session.previous_id` SHOULD be included in the event. The values of `session.id` and `session.previous_id` -MUST be different. +the `session.previous_id` SHOULD be included in the event. The values of `session.id` and `session.previous_id` +MUST be different. -| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | +| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | |---------------------------------------------------------------|--------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------| | [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being started. | `Required` | | [`session.previous_id`](/docs/attributes-registry/session.md) | string | The previous `session.id` for this user, when known. | `Conditionally Required` | - ### Session End Event ![Experimental](https://img.shields.io/badge/-experimental-blue) @@ -64,7 +63,7 @@ For instrumentation that tracks users behavior during user sessions, a `session. every time a session ends. When a session ends and continues as a new session, this event SHOULD also be emitted prior to the `session.start` event. -| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | +| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | |---------------------------------------------------------------|--------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------| | [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being started. | `Required` | From e873fbedef62c7e370c2fee4968361bd9d5a15e2 Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Wed, 29 May 2024 10:35:03 -0700 Subject: [PATCH 08/17] =?UTF-8?q?revert=20formatting=20in=20other=20sectio?= =?UTF-8?q?n=20=C2=AF\=5F(=E3=83=84)=5F/=C2=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/general/session.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/general/session.md b/docs/general/session.md index eacc4b848c..9cbef415f4 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -24,10 +24,10 @@ backends can link the two sessions (see [Session Start Event](#session-start-eve -| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | -|---------------------------------------------------------------|--------|------------------------------------------------------|----------------------------------------|-------------------------------------------------------------------------------------------------------|------------------------------------------------------------------| -| [`session.id`](/docs/attributes-registry/session.md) | string | A unique id to identify a session. | `00112233-4455-6677-8899-aabbccddeeff` | `Opt-In` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`session.previous_id`](/docs/attributes-registry/session.md) | string | The previous `session.id` for this user, when known. | `00112233-4455-6677-8899-aabbccddeeff` | `Opt-In` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | +|---|---|---|---|---|---| +| [`session.id`](/docs/attributes-registry/session.md) | string | A unique id to identify a session. | `00112233-4455-6677-8899-aabbccddeeff` | `Opt-In` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`session.previous_id`](/docs/attributes-registry/session.md) | string | The previous `session.id` for this user, when known. | `00112233-4455-6677-8899-aabbccddeeff` | `Opt-In` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | From 1ce116d35fab32bd2ccf4d8f4492fd2a57261366 Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Mon, 3 Jun 2024 14:22:27 -0700 Subject: [PATCH 09/17] add semantic clarification --- docs/general/session.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/general/session.md b/docs/general/session.md index 9cbef415f4..015ecd45c9 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -48,6 +48,11 @@ every time a session is created. When a new session is created as a continuation the `session.previous_id` SHOULD be included in the event. The values of `session.id` and `session.previous_id` MUST be different. +When the `session.start` event contains both `session.id` and `session.previous_id` fields, the event then implies +that the previous session has ended. If the session ID in `session.previous_id` has not yet ended via explicit +`session.end` event, then the receiver SHOULD treat this continuation event as semantically equivalent to +`session.end(session.previous_id)` and `session.start(session.id)`. + | Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | |---------------------------------------------------------------|--------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------| | [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being started. | `Required` | From 5edd40098a6afb8bc97a1dc6e0231efee0e935d7 Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Tue, 4 Jun 2024 15:06:31 -0700 Subject: [PATCH 10/17] fix copypasta --- docs/general/session.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/general/session.md b/docs/general/session.md index 015ecd45c9..5714425a3d 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -68,8 +68,8 @@ For instrumentation that tracks users behavior during user sessions, a `session. every time a session ends. When a session ends and continues as a new session, this event SHOULD also be emitted prior to the `session.start` event. -| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | -|---------------------------------------------------------------|--------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------| -| [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being started. | `Required` | +| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | +|---------------------------------------------------------------|--------|----------------------------------------|-------------------------------------------------------------------------------------------------------| +| [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being ended. | `Required` | [DocumentStatus]: https://opentelemetry.io/docs/specs/otel/document-status From 4a73b11df1f4fdc241dba3694a9acb9894279559 Mon Sep 17 00:00:00 2001 From: Jason Plumb Date: Fri, 7 Jun 2024 15:00:12 -0700 Subject: [PATCH 11/17] add experimental to each body field. yup. --- docs/general/session.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/general/session.md b/docs/general/session.md index 5714425a3d..8055304bac 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -53,10 +53,10 @@ that the previous session has ended. If the session ID in `session.previous_id` `session.end` event, then the receiver SHOULD treat this continuation event as semantically equivalent to `session.end(session.previous_id)` and `session.start(session.id)`. -| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | -|---------------------------------------------------------------|--------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------| -| [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being started. | `Required` | -| [`session.previous_id`](/docs/attributes-registry/session.md) | string | The previous `session.id` for this user, when known. | `Conditionally Required` | +| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | +|---------------------------------------------------------------|--------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------|------------------------------------------------------------------| +| [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being started. | `Required` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`session.previous_id`](/docs/attributes-registry/session.md) | string | The previous `session.id` for this user, when known. | `Conditionally Required` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | ### Session End Event @@ -68,8 +68,8 @@ For instrumentation that tracks users behavior during user sessions, a `session. every time a session ends. When a session ends and continues as a new session, this event SHOULD also be emitted prior to the `session.start` event. -| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | -|---------------------------------------------------------------|--------|----------------------------------------|-------------------------------------------------------------------------------------------------------| -| [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being ended. | `Required` | +| Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | +|---------------------------------------------------------------|--------|----------------------------------------|--------------------------|------------------------------------------------------------------| +| [`session.id`](/docs/attributes-registry/session.md) | string | The ID of the new session being ended. | `Required` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | [DocumentStatus]: https://opentelemetry.io/docs/specs/otel/document-status From fffaf0ffdec25b8d5a6082db6fd99e555655a7c3 Mon Sep 17 00:00:00 2001 From: jason plumb <75337021+breedx-splk@users.noreply.github.com> Date: Thu, 13 Jun 2024 09:55:41 -0700 Subject: [PATCH 12/17] Update docs/general/session.md Co-authored-by: Joao Grassi <5938087+joaopgrassi@users.noreply.github.com> --- docs/general/session.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/session.md b/docs/general/session.md index 8055304bac..818c0bcf6d 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -43,7 +43,7 @@ backends can link the two sessions (see [Session Start Event](#session-start-eve `event.name`=`session.start` -For instrumentation that tracks users behavior during user sessions, a `session.start` event MUST be emitted +For instrumentation that tracks user behavior during user sessions, a `session.start` event MUST be emitted every time a session is created. When a new session is created as a continuation of a prior session, the `session.previous_id` SHOULD be included in the event. The values of `session.id` and `session.previous_id` MUST be different. From 9f6e119f91001eb90bfe55ebbca781987a4e24e4 Mon Sep 17 00:00:00 2001 From: jason plumb <75337021+breedx-splk@users.noreply.github.com> Date: Thu, 13 Jun 2024 09:55:52 -0700 Subject: [PATCH 13/17] Update docs/general/session.md Co-authored-by: Joao Grassi <5938087+joaopgrassi@users.noreply.github.com> --- docs/general/session.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/session.md b/docs/general/session.md index 818c0bcf6d..42e43d4f5d 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -64,7 +64,7 @@ that the previous session has ended. If the session ID in `session.previous_id` `event.name`=`session.end` -For instrumentation that tracks users behavior during user sessions, a `session.end` event SHOULD be emitted +For instrumentation that tracks user behavior during user sessions, a `session.end` event SHOULD be emitted every time a session ends. When a session ends and continues as a new session, this event SHOULD also be emitted prior to the `session.start` event. From 3d03f2f38d0ba6694fb23d14cec4906e457ab9cd Mon Sep 17 00:00:00 2001 From: jason plumb <75337021+breedx-splk@users.noreply.github.com> Date: Thu, 13 Jun 2024 10:02:27 -0700 Subject: [PATCH 14/17] Update docs/general/session.md Co-authored-by: Joao Grassi <5938087+joaopgrassi@users.noreply.github.com> --- docs/general/session.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/session.md b/docs/general/session.md index 42e43d4f5d..a78e7f2116 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -65,7 +65,7 @@ that the previous session has ended. If the session ID in `session.previous_id` `event.name`=`session.end` For instrumentation that tracks user behavior during user sessions, a `session.end` event SHOULD be emitted -every time a session ends. When a session ends and continues as a new session, this event SHOULD also be +every time a session ends. When a session ends and continues as a new session, this event SHOULD be emitted prior to the `session.start` event. | Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | From ee74a891fc147e0d8370bd00a45584a51a509f0d Mon Sep 17 00:00:00 2001 From: jason plumb <75337021+breedx-splk@users.noreply.github.com> Date: Fri, 19 Jul 2024 15:47:52 -0700 Subject: [PATCH 15/17] Update docs/general/session.md Co-authored-by: Liudmila Molkova --- docs/general/session.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/session.md b/docs/general/session.md index a78e7f2116..bccb8951f7 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -62,7 +62,7 @@ that the previous session has ended. If the session ID in `session.previous_id` ![Experimental](https://img.shields.io/badge/-experimental-blue) -`event.name`=`session.end` +`event.name` MUST be `session.end` For instrumentation that tracks user behavior during user sessions, a `session.end` event SHOULD be emitted every time a session ends. When a session ends and continues as a new session, this event SHOULD be From 402a947349df3cf39cee56f09bb61abdc033221f Mon Sep 17 00:00:00 2001 From: jason plumb <75337021+breedx-splk@users.noreply.github.com> Date: Fri, 19 Jul 2024 15:48:55 -0700 Subject: [PATCH 16/17] Update docs/general/session.md --- docs/general/session.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/session.md b/docs/general/session.md index bccb8951f7..64bc6c4157 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -41,7 +41,7 @@ backends can link the two sessions (see [Session Start Event](#session-start-eve ![Experimental](https://img.shields.io/badge/-experimental-blue) -`event.name`=`session.start` +`event.name` MUST be`session.start` For instrumentation that tracks user behavior during user sessions, a `session.start` event MUST be emitted every time a session is created. When a new session is created as a continuation of a prior session, From c576469ce29716ad69b5c2ac3489246f4e2b0820 Mon Sep 17 00:00:00 2001 From: jason plumb <75337021+breedx-splk@users.noreply.github.com> Date: Fri, 19 Jul 2024 15:49:58 -0700 Subject: [PATCH 17/17] Update docs/general/session.md --- docs/general/session.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/session.md b/docs/general/session.md index 64bc6c4157..99ab4d63f5 100644 --- a/docs/general/session.md +++ b/docs/general/session.md @@ -50,7 +50,7 @@ MUST be different. When the `session.start` event contains both `session.id` and `session.previous_id` fields, the event then implies that the previous session has ended. If the session ID in `session.previous_id` has not yet ended via explicit -`session.end` event, then the receiver SHOULD treat this continuation event as semantically equivalent to +`session.end` event, then the consumer SHOULD treat this continuation event as semantically equivalent to `session.end(session.previous_id)` and `session.start(session.id)`. | Body field | Type | Description | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |