diff --git a/packages/nextjs/README.md b/packages/nextjs/README.md index be8fac64345d..5cd5d6d4a38b 100644 --- a/packages/nextjs/README.md +++ b/packages/nextjs/README.md @@ -7,13 +7,54 @@ # Official Sentry SDK for NextJS -TODO: npm version, npm dm, npm dt, typedoc - ## Links - [Official SDK Docs](https://docs.sentry.io/quickstart/) - [TypeDoc](http://getsentry.github.io/sentry-javascript/) -## Usage +## General + +This package is a wrapper around `@sentry/node` for the server and `@sentry/react` for the client, with added functionality related to NextJS. + +To use this SDK, call `Sentry.init(options)` as early as possible in the server and the client; +this will initialize the SDK and hook into the environment. + + +```javascript +import * as Sentry from '@sentry/nextjs'; + +Sentry.init({ + dsn: '__DSN__', + // ... +}); +``` + +To set context information or send manual events, use the exported functions of `@sentry/minimal`. +Note that these functions will not perform any action before you have called `Sentry.init()`: + +```javascript +import * as Sentry from '@sentry/nextjs'; + +// Set user information, as well as tags and further extras +Sentry.configureScope(scope => { + scope.setExtra('battery', 0.7); + scope.setTag('user_mode', 'admin'); + scope.setUser({ id: '4711' }); + // scope.clear(); +}); + +// Add a breadcrumb for future events +Sentry.addBreadcrumb({ + message: 'My Breadcrumb', + // ... +}); -TODO +// Capture exceptions, messages or manual events +Sentry.captureMessage('Hello, world!'); +Sentry.captureException(new Error('Good bye')); +Sentry.captureEvent({ + message: 'Manual', + stacktrace: [ + // ... + ], +});```