Я использую Angular: "@angular/core": "7.2.4",
и sentry: "@sentry/browser": "4.6.3",
.
С помощью следующего кода мое приложение правильно выдает ошибку:
// import * as Sentry from '@sentry/browser';
//
// Sentry.init({
// dsn: 'mydsn',
// debug: true
// });
@Injectable()
export class SentryErrorHandler implements ErrorHandler {
constructor() {}
handleError(error) {
throw error;
// Sentry.captureException(error.originalError || error);
// throw error;
}
}
@NgModule({
declarations: [
AppComponent
],
imports: [
// imports
],
providers: [
{provide: ErrorHandler, useClass: SentryErrorHandler},
],
bootstrap: [AppComponent]
})
Однако, как только яраскомментируйте часовой пояс, мое приложение просто зависает при ошибке, например:
import * as Sentry from '@sentry/browser';
Sentry.init({
dsn: 'mydsn',
debug: true
});
@Injectable()
export class SentryErrorHandler implements ErrorHandler {
constructor() {}
handleError(error) {
Sentry.captureException(error.originalError || error);
throw error;
}
}
@NgModule({
declarations: [
AppComponent
],
imports: [
// imports
],
providers: [
// {provide: ErrorHandler, useClass: SentryErrorHandler},
],
bootstrap: [AppComponent]
})
У меня установлено значение отладки true, и консоль возвращает:
Sentry Logger [Log]: Integration installed: Dedupe
logger.js:30 Sentry Logger [Log]: Integration installed: InboundFilters
logger.js:30 Sentry Logger [Log]: Integration installed: FunctionToString
logger.js:30 Sentry Logger [Log]: Integration installed: ExtraErrorData
logger.js:30 Sentry Logger [Log]: Integration installed: TryCatch
logger.js:30 Sentry Logger [Log]: Integration installed: Breadcrumbs
logger.js:30 Sentry Logger [Log]: Integration installed: GlobalHandlers
logger.js:30 Sentry Logger [Log]: Integration installed: LinkedErrors
logger.js:30 Sentry Logger [Log]: Integration installed: UserAgent
В диспетчере задач в Google Chrome скачки ЦПи затем в конечном итоге страница падает.
Ошибка, которую я пытаюсь проверить, заключается в размещении произвольной console.log(t);
, где t
- неопределенная переменная.
Я запускаю это с localhost иМожно подтвердить, что я разрешил весь трафик в настройках часового проекта, а также подтвердить, что DSN предназначен для правильной учетной записи.