Skip to content

Re-integrate Sentry's Session Replay to the Website #7801

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
ovflowd opened this issue Jun 1, 2025 · 11 comments
Open

Re-integrate Sentry's Session Replay to the Website #7801

ovflowd opened this issue Jun 1, 2025 · 11 comments
Labels
infrastructure Issues/PRs related to the Repository Infra meta Meta Issues for Administration of the Website Team

Comments

@ovflowd
Copy link
Member

ovflowd commented Jun 1, 2025

I believe Session Replays provided valuable information on what users are doing, and I think it is worth to re-add Sentry on the Website, even if it is just for Session Replay.

It needs to be done in a way that it bootstraps in a separate chunk and after page-load, we can't have user experience being affected by this + I'm fine only integrating Session Replay and nothing more.

I want to better understand how many users are going to the ESP/EOL page in Node.js Releasdes + what download options people are choosing. We might update the Dropdown of download options to give unique classnames or IDs btw.

One of the reasons are that the DevBox option on Downloads is scratching my head. I've never seen anyone using this option (in the sense that I don't know anyone that uses DevBox) and I do believe we should have some criteria or say on what should be added there even if it passes all community critera.

Better understanding the numbers will provide a better case to add part of the community criteria something like "the community critera needs to pass at leasy lazy-consensus when requested to be added through an issue; and any website team member can raise an issue to remove it at any given time at their discretion if it passes also the consensus seeking process" -- for me this is a path to protect ourselves from overbloating the download dropdown options + from edge cases that could misleadingly be passing all communinity criteria (not official ones, although IMO official ones should ALSO be approved by a consensus seeking process)

I'm fine proposing an amend to that. As @ljharb said once, we should avoid bloating the dropdown with whatever that appears. This is a way to protect ourselves in a democratic manner.

cc @nodejs/nodejs-website @nodejs/web-infra

@ovflowd ovflowd added infrastructure Issues/PRs related to the Repository Infra meta Meta Issues for Administration of the Website Team labels Jun 1, 2025
@github-project-automation github-project-automation bot moved this to 📋 Backlog in Node.js Website Jun 1, 2025
@bjohansebas
Copy link
Member

I'm not sure I understand how it works, but if it's how I think, that it records what the user does, I'm -1. I'd prefer to use something like Vercel's own Tracking Custom Events, it seems less intrusive to the user IMO.

@MattIPv4
Copy link
Member

MattIPv4 commented Jun 1, 2025

+1 to what @bjohansebas said, Session Reply (from what I understand of it) feels like the wrong tool for the issue being described here -- we want to track and aggregate interactions, not watch back individuals exploring the page. An analytics tool is far better suited to this, and is a lot less invasive.

@ovflowd
Copy link
Member Author

ovflowd commented Jun 1, 2025

I'm not sure I understand how it works, but if it's how I think, that it records what the user does, I'm -1. I'd prefer to use something like Vercel's own Tracking Custom Events, it seems less intrusive to the user IMO.

We used Session Replay before, and no, Session Replay is non-intrusive. It is all anonymized, and there's no PII or user data to even be tracked on Node's website, hence why we don't even have a cookie banner.

@ovflowd
Copy link
Member Author

ovflowd commented Jun 1, 2025

we want to track and aggregate interactions, not watch back individuals exploring the page. An analytics tool is far better suited to this, and is a lot less invasive.

I don't want to introduce usage tracking on our website. I want to add Session Replay because it allows us to better understand how users are interacting with the website (from frustration, session drops, understanding usage patterns), custom tracking events or analytical events give a very partial and imprecise story. + coding usage events requires us adding these tracking calls all over the website, and I don't want to add "user tracking". Think of Session Replay as a way to reconstruct the DOM and better understand UX.

Note that this was here before, and we only removed due to the large bundle-size addition Sentry was doing to the website and I was too lazy at the time to want to meddle with optimizing it.

@ovflowd
Copy link
Member Author

ovflowd commented Jun 1, 2025

BTW @bjohansebas and @MattIPv4 there are two points this issue is covering actually:

  • Re-integration of Session Replay
  • Consensus Seeking process behind adding/removing download options from the Dropdown of Version Managers within the Downloads page.

@bjohansebas
Copy link
Member

I still feel that we shouldn’t have this, it’s more than what an open source project should have for tracking. I won’t be a blocker if others think it would be a good idea.

@MattIPv4
Copy link
Member

MattIPv4 commented Jun 1, 2025

there are two points this issue is covering actually:

* Re-integration of Session Replay

* Consensus Seeking process behind adding/removing download options from the Dropdown of Version Managers within the Downloads page.

I think we should split those up as I think we're conflating things that shouldn't be conflated. I can see Session Replay being useful for user research, and I agree with your points around that. I don't think Session Replay is the right tool for the job to determine at an aggregate level whether a feature/interaction happens often or not, unless I'm misunderstanding how Session Replay works and the data it gives us?

@ljharb
Copy link
Member

ljharb commented Jun 2, 2025

I don't know anything about Sentry's tools, but if it's the same as Google Analytics, then that seems perfectly acceptable for anything, open source project or not.

@ovflowd
Copy link
Member Author

ovflowd commented Jun 2, 2025

I still feel that we shouldn’t have this, it’s more than what an open source project should have for tracking. I won’t be a blocker if others think it would be a good idea.

I'd like you to expand on, why you believe this is not something an Open Source project should have?

@ovflowd
Copy link
Member Author

ovflowd commented Jun 2, 2025

I think we should split those up as I think we're conflating things that shouldn't be conflated. I can see Session Replay being useful for user research, and I agree with your points around that. I don't think Session Replay is the right tool for the job to determine at an aggregate level whether a feature/interaction happens often or not, unless I'm misunderstanding how Session Replay works and the data it gives us?

I see. I gave Session Replay being re-added as an example of data source for the decision making process I've mentioned above. To be clear, I do think we should reintegrate Session Replay for the sake of UX research and providing a better website for our userbase, legit honest intent. But I also felt that now it is a good opportunity due to what I mentioned above (community version managers)

@ovflowd
Copy link
Member Author

ovflowd commented Jun 2, 2025

I don't know anything about Sentry's tools, but if it's the same as Google Analytics, then that seems perfectly acceptable for anything, open source project or not.

Sentry's Session Replay uses the Open Source rrweb (https://github.com/rrweb-io/rrweb) for recording the DOM tree and then it sends to our Node.js project in Sentry. That's pretty much it, it doesn't track anything (breadcrumbs or user information) besides the very basic (user agent and anonymous session ids, etc)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
infrastructure Issues/PRs related to the Repository Infra meta Meta Issues for Administration of the Website Team
Projects
Status: 📋 Backlog
Development

No branches or pull requests

4 participants