-
Notifications
You must be signed in to change notification settings - Fork 63
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
Feature: Error tracking #2862
Feature: Error tracking #2862
Conversation
This isn't ideal as it'll still be included if not enabled, but async loading means it boots after vue and tracking isn't injected correctly.
function getPath (file) { | ||
return path.resolve(__dirname, '..', file) | ||
} | ||
|
||
module.exports = { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is much easier to see the changes (it's now wrapped in a function) using ?w=1
init, | ||
vueRouterInstrumentation | ||
|
||
} from '@sentry/vue' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ideally, this would be loaded async so it's not required if sentry is not enabled (so there's no bundle size impact), unfortunately, Sentry needs to init before Vue
for the hooks to work properly.
If we keep sentry around, we can look into including the SDK as part of the injected code in forge/routes/ui/index.js
Description
This PR implements tracking of errors and reporting of them to a third party tool https://sentry.io/, which was selected based on conversations with other developers and a brief review of the products in the market (including BugSnag, Rollbar, and Bugfender) including their costs.
This is an experiment while we have a free trial, and may be removed later. Error tracking is only enabled if
config.telemetry.frontend.sentry
orconfig.telemetry.backend.sentry
are configured, following the precedent for PostHog.This PR includes:
As a follow up:
config.telemetry.frontend.sentry
andconfig.telemetry.backend.sentry
will need to be configured on staging (and then production).env
need to be configured as part of our build pipelineRelated Issue(s)
OKRs for engineering team
Checklist
flowforge.yml
- Needs to be completedFlowFuse/helm
to update ConfigMap TemplateFlowFuse/CloudProject
to update values for Staging/ProductionLabels
backport
labelarea:migration
label