* fix(api): decouple api from curriculum This reverts commit8f0e441644
and introduces the implementations from #40703. * fix(gitpod): add curriculum build to GitPod This reverts commit706d70f58d
and introduces implementations from #41234. * docs: update DevOps manual for api change (#41259) Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
24 lines
821 B
JavaScript
24 lines
821 B
JavaScript
import { Handlers, captureException } from '@sentry/node';
|
|
import { sentry } from '../../../../config/secrets';
|
|
import { isHandledError } from '../utils/create-handled-error';
|
|
|
|
// sends directly to Sentry
|
|
export function reportError(err) {
|
|
return sentry.dns === 'dsn_from_sentry_dashboard'
|
|
? console.error(err)
|
|
: captureException(err);
|
|
}
|
|
|
|
// determines which errors should be reported
|
|
export default function sentryErrorHandler() {
|
|
return sentry.dns === 'dsn_from_sentry_dashboard'
|
|
? (req, res, next) => next()
|
|
: Handlers.errorHandler({
|
|
shouldHandleError(err) {
|
|
// CSRF errors have status 403, consider ignoring them once csurf is
|
|
// no longer rejecting people incorrectly.
|
|
return !isHandledError(err) && (!err.status || err.status >= 500);
|
|
}
|
|
});
|
|
}
|