Skip to content

Propagate session ID metadata - #215

Merged
Logan Ramos (lramos15) merged 1 commit into
microsoft:mainfrom
software-mansion-labs:propagate-session-id-metadata
Nov 19, 2024
Merged

Logan Ramos (lramos15) merged 1 commit into
microsoft:mainfrom
software-mansion-labs:propagate-session-id-metadata

Conversation

@kmagiera

Copy link
Copy Markdown
Contributor

This PR adds session ID metadata when reporting events.

Before this change, all events would be collected under a single session under Application Insights. It makes it hard to isolate reported events and reason how often users launch the extension.

In this PR, we use vscode's env sessionId field to pass it as session identifier when reporting app insight events (via app.sesId field).

@kmagiera

Copy link
Copy Markdown
Contributor Author

@microsoft-github-policy-service agree company="Software Mansion"

@vs-code-engineering vs-code-engineering Bot added this to the November 2024 milestone Nov 19, 2024
@lramos15
Logan Ramos (lramos15) merged commit eaf9dc2 into microsoft:main Nov 19, 2024
Krzysztof Magiera (kmagiera) added a commit to software-mansion/radon-ide that referenced this pull request Nov 20, 2024
This PR fixes the issue with telemetry module that wasn't collecting
user-id and session-id properly resulting in all the telemetry events
being squashed under a single user and session.

The main fix for user-id reporting has already landed in the new version
of telemetry package
microsoft/vscode-extension-telemetry#210
We also submitted a PR that has been merged to address the session ID
issue: microsoft/vscode-extension-telemetry#215

Because there's been no release since that update, we're installing a
fork of telemetry module with our changes included from
https://github.com/software-mansion-labs/vscode-extension-telemetry
Since the package requires a build-step, we've uploaded bundled JS files
into the fork repository and install the dependency using github link.

The new version of telementy module now requires a so-called "connection
string" instead of just the instrumentation key as the first argument.
Because of that we're also updating the public key value.

### How Has This Been Tested: 
1. Change panelOpen event to panelOpen-test20
2. Open extension
3. Check in Application Insights that the new event arrived and it has
distinct user id and session set.
Apple0717 added a commit to Apple0717/radon that referenced this pull request Nov 30, 2024
This PR fixes the issue with telemetry module that wasn't collecting
user-id and session-id properly resulting in all the telemetry events
being squashed under a single user and session.

The main fix for user-id reporting has already landed in the new version
of telemetry package
microsoft/vscode-extension-telemetry#210
We also submitted a PR that has been merged to address the session ID
issue: microsoft/vscode-extension-telemetry#215

Because there's been no release since that update, we're installing a
fork of telemetry module with our changes included from
https://github.com/software-mansion-labs/vscode-extension-telemetry
Since the package requires a build-step, we've uploaded bundled JS files
into the fork repository and install the dependency using github link.

The new version of telementy module now requires a so-called "connection
string" instead of just the instrumentation key as the first argument.
Because of that we're also updating the public key value.

### How Has This Been Tested: 
1. Change panelOpen event to panelOpen-test20
2. Open extension
3. Check in Application Insights that the new event arrived and it has
distinct user id and session set.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants