@eienjs/adonisjs-sentry
v3.0.0
Published
Sentry service provider for AdonisJS
Maintainers
Readme
@eienjs/adonisjs-sentry
Sentry service provider for AdonisJS v7 application.
Introduction
A simple wrapper around the Sentry SDK to make it easier to use with AdonisJS v7 application.
Quick Start
Install the package using the following command:
node ace add @eienjs/adonisjs-sentryAutomatically the command will register the provider and the command included in the package. Now update the app/exceptions/handler.ts file:
// ... your other imports
import { reportException } from '@eienjs/adonisjs-sentry';
export default class HttpExceptionHandler extends ExceptionHandler {
async report(error: unknown, ctx: HttpContext) {
reportException(error, ctx);
await super.report(error, ctx);
}
}And not forget to update your .env file SENTRY_DSN value.
Notes
dsnis only required whenenabledistrue.- The provider initializes Sentry in
register()and closes it (flushing events) on shutdown. For full auto-instrumentation of third-party modules, initialize Sentry in an early preload file instead and keep the provider (it skips init if already initialized). reportException(error, ctx)skips errors matching the ignore lists (ignoreStatuses,ignoreCodes,ignoreExceptions) defined inconfig/sentry.ts(report.*). It attaches route, method, request id, params,error.code/status tags and the authenticated user id (email/IP only whendataCollection.userInfois notfalse). Events are grouped by Adonis error code (E_*) unlessreport.fingerprintByCodeisfalse.- Set
SENTRY_RELEASE(e.g. the git commit SHA) and upload source maps with@sentry/cli sourcemaps upload ./buildso stack traces point to your TypeScript sources. node ace sentry:verifyflushes the event and exits with code 1 if it could not be delivered.
Documentation
The documentation is available on EienJS.
Contributing
Contributions are welcome. Please read CONTRIBUTING for more details and remember to check the CHANGELOG file.
Copyright and License
The @eienjs/adonisjs-sentry library is licensed for use under the MIT License (MIT). Please see LICENSE for more information.
