Skip to content

change: [M3-10534] - Error in Sentry: window.crypto.randomUUID is not a function - #12818

Merged
bill-akamai merged 10 commits into
linode:developfrom
bill-akamai:M3-10534
Sep 10, 2025
Merged

change: [M3-10534] - Error in Sentry: window.crypto.randomUUID is not a function#12818
bill-akamai merged 10 commits into
linode:developfrom
bill-akamai:M3-10534

Conversation

@bill-akamai

@bill-akamai bill-akamai commented Sep 4, 2025

Copy link
Copy Markdown
Contributor

Description 📝

This PR addresses false positive errors in Sentry: "window.crypto.randomUUID is not a function." These are believed to be caused by synthetic monitoring tools like Catchpoint which lack full DOM API support including the crypto API.

Changes 🔄

  • Added condition to ignore error if user agent contains "Catchpoint" in initSentry.ts

Scope 🚢

  • All customers
  • Some customers (e.g. in Beta or Limited Availability)
  • No customers / Not applicable

Reproduction steps

"window.crypto.randomUUID is not a function" errors can be observed in our Sentry dashboard. In the "Context" section of these reports, the browser listed is "Catchpoint," a synthetic monitoring tool which does not have access to the DOM APIs like window.crypto.

Verification steps

  • Confirm test passes: pnpm test packages/manager/src/initSentry.test.ts

Post deployment verification will include monitoring Sentry logs for reduction in crypto API false positives.

Author Checklists

As an Author, to speed up the review process, I considered 🤔

👀 Doing a self review
❔ Our contribution guidelines
🤏 Splitting feature into small PRs
➕ Adding a changeset
🧪 Providing/improving test coverage
🔐 Removing all sensitive information from the code and PR description
🚩 Using a feature flag to protect the release
👣 Providing comprehensive reproduction steps
📑 Providing or updating our documentation
🕛 Scheduling a pair reviewing session
📱 Providing mobile support
♿ Providing accessibility support


  • I have read and considered all applicable items listed above.

As an Author, before moving this PR from Draft to Open, I confirmed ✅

  • All tests and CI checks are passing
  • TypeScript compilation succeeded without errors
  • Code passes all linting rules

@bill-akamai
bill-akamai marked this pull request as ready for review September 8, 2025 21:28
@bill-akamai
bill-akamai requested a review from a team as a code owner September 8, 2025 21:28
@bill-akamai
bill-akamai requested review from cpathipa and mjac0bs and removed request for a team September 8, 2025 21:28

@bnussman-akamai bnussman-akamai left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you think about, rather than changing up any auth logic, we just ignore any errors from catchpoint user-agents.

Image

I do like the idea of decreasing Sentry noise, but I think there is value in letting normal user browsers still throw so we have an insights into browsers and users can't use Cloud Manager due to a lack of the crypto API

@bill-akamai

Copy link
Copy Markdown
Contributor Author

I do like the idea of decreasing Sentry noise, but I think there is value in letting normal user browsers still throw so we have an insights into browsers and users can't use Cloud Manager due to a lack of the crypto API

Thanks @bnussman-akamai I was thinking this would be the preferred method but didn't even know we had this file. Updated the PR.

@bnussman-akamai bnussman-akamai left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.

Just left a comment about avoiding anys

Comment thread packages/manager/src/initSentry.test.ts Outdated
@github-project-automation github-project-automation Bot moved this from Review to Approved in Cloud Manager Sep 10, 2025

@mjac0bs mjac0bs left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change makes sense and test is passing, thank you. Banks' suggestion is a good one.

Image

@mjac0bs mjac0bs added the Approved Multiple approvals and ready to merge! label Sep 10, 2025
@linode-gh-bot

Copy link
Copy Markdown

Cloud Manager UI test results

🎉 745 passing tests on test run #9 ↗︎

❌ Failing✅ Passing↪️ Skipped🕐 Duration
0 Failing745 Passing6 Skipped35m 18s

@bill-akamai
bill-akamai merged commit 8893a11 into linode:develop Sep 10, 2025
35 checks passed
@github-project-automation github-project-automation Bot moved this from Approved to Merged in Cloud Manager Sep 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Approved Multiple approvals and ready to merge! Tech Debt

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

5 participants