Angular wrapper for the official Sentry JavaScript SDK
To set up or update an Angular project with this library use the Angular CLI's schematic commands:
ng add @hug/ngx-sentry
More details
The
ng add
command will ask you the following questions:
- Name of the project in Sentry: the name used when creating the Sentry project
- Data Source Name (DSN) url: the url provided during the Sentry project creation process
And will also perform the following actions:
- Create a
.sentryclirc
file containing all the Sentry configurations- Initialize and configure Sentry in
main.ts
- Add
resolveJsonModule
andallowSyntheticDefaultImports
totsconfig.json
- Import the
NgxSentryModule
in your Angular application module (if app is not standalone)
ng update @hug/ngx-sentry
Follow these steps to integrate your project's source maps with Sentry:
-
Generate Source Maps
ng build --source-map
-
Provide Source Maps to Sentry
npx ngx-sentry ./project-dist-path
This library is a wrapper around the official Sentry JavaScript SDK with extra functionalities and configurations.
All options available in @sentry/browser
can be configured from @hug/ngx-sentry
.
You shouldn't have to configure anything else but in case you wanted to, you can still do it.
The Sentry Browser's SDK can be configured in main.ts
:
initSentry(options: BrowserOptions);
The behavior of the error handler can be configured either in:
-
main.ts
(if the app is a standalone Angular application)bootstrapApplication(AppComponent, { providers: [ provideSentry(options?: ErrorHandlerOptions) ] });
-
app.module.ts
(if the app is not a standalone Angular application)@NgModule({ imports: [ NgxSentryModule.forRoot(options?: ErrorHandlerOptions) ] }) export class AppModule { }
You can define the current user via the setSentryUser()
api:
// import { setSentryUser } from '@hug/ngx-sentry/standalone';
// import { setSentryUser } from '@hug/ngx-sentry';
public ngOnInit(): void {
// Set the current user
setSentryUser({
email: 'rtrm@hcuge.ch',
username: 'rtrm',
attr1: 'attr1'
});
// Remove the current user
setSentryUser(null);
}
See the developer docs.
Want to file a bug, contribute some code or improve documentation? Excellent!
But please read up first on the guidelines for contributing, and learn about submission process, coding rules and more.
Please read and follow the Code of Conduct, and help us keep this project open and inclusive.
Copyright (C) 2021 HUG - Hôpitaux Universitaires Genève