Skip to content

Nativescript plugin for Sentry to log NativeScript crashes.

License

Notifications You must be signed in to change notification settings

NathanWalker/nativescript-ng-sentry

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NativeScript plugin for Sentry

npm version

This is a plugin to log app crashes with Sentry.

Installation

Run the following command from the root of your project:

$ tns plugin add @essent/nativescript-ng-sentry

This command automatically installs the necessary files, as well as stores nativescript-ng-sentry as a dependency in your project's package.json file.

Usage

To use nativescript-ng-sentry you must first import the module:

import { NgSentry } from '@essent/nativescript-ng-sentry';

At the launch of your app call setCredentials with your own credentials, these can be found in your Sentry Project Settings, Client Keys (DSN). Use the public DSN for these credentials. Optionally you can also provide an environment and a user id.

NgSentry.getInstance().setCredentials('123456', '123456789abcdefghijklmnopqrstuvw', 'development', 'unique-user-id');

To log a crash, call saveCrash with a message and details. The details will be used as a Sentry breadcrumb, you can use this to save a stacktrace, for example. You can have a look at our example on how to call this with an uncaughtErrorEvent.

NgSentry.getInstance().saveCrash('My crash message', 'My crash details');

Crashes are not send to Sentry automatically, you can call sendCrashes to send all saved crashes to Sentry. We suggest you call this method in the resume event of your app.

NgSentry.getInstance().sendCrashes();

Breadcrumbs (optional)

You can save breadcrumbs to see what a user did before a crash occurred, these will be added to the next crash you save. To add a breadcrumb use saveBreadcrumb with a title and category.

NgSentry.getInstance().saveBreadcrumb('Routed to details page', 'state');

Optionally you can add extra data to the breadcrumb.

const properties: KeyValue<string> = {
    page: 'Change user data',
    changed: 'Username'
};
NgSentry.getInstance().saveBreadcrumb('Save success', 'action', properties);

Optionally you can set a maximum amount of breadcrumbs, the default is 50.

NgSentry.getInstance().setMaxAmountOfBreadcrumbs(10);

About

Nativescript plugin for Sentry to log NativeScript crashes.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 84.0%
  • Shell 16.0%