Skip to content

Tiny Sentry client with idiomatic wrapper for Angular

License

Notifications You must be signed in to change notification settings

taiga-family/micro-sentry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

micro-sentry

npm version

@micro-sentry/core size

@micro-sentry/browser size

@micro-sentry/angular size

@micro-sentry is a tiny sentry client to monitor your applications without raising your bundle size.

Why is it better than default sentry client?

πŸ‘œ It is small. So, it is at most 2.27 kB (gzip) in size instead of default 85.1 kB (gzip), yet it retains all the the essential functionality.

πŸ›  It is easy to set up. There is a lightweight wrapper for Angular and a browser tool for other frameworks or vanilla.

Check out all the core functionality here.

Installation

Angular:

Micro-sentry version Angular version
>= 6 >= 14
>= 5 >= 13
>= 4 >= 12
>= 3 >= 11
>= 2 >= 10
npm i @micro-sentry/angular

Other:

npm i @micro-sentry/browser

Note

since version @micro-sentry/browser@7 breadcrumbs-plugin is a separate package

npm i @micro-sentry/breadcrumbs-plugin

How to set up

Angular

You can use provide api in standalone applications:

import { provideMicroSentry } from '@micro-sentry/angular';

bootstrapApplication(AppComponent, {
  providers: [
    provideMicroSentry({
      dsn: 'https://kj12kj1n23@sentry.domain.com/123',
    }),
  ],
});

Or add it into app.module.ts of your application:

import { MicroSentryModule } from '@micro-sentry/angular';

@NgModule({
  imports: [
    // options 1: via module
    MicroSentryModule.forRoot({
      dsn: 'https://kj12kj1n23@sentry.domain.com/123',
    }),
  ],
  providers: [
    // option 2: via provide
    provideMicroSentry({
      dsn: 'https://kj12kj1n23@sentry.domain.com/123',
    }),
  ],
})
export class AppModule {}

Javascript / Typescript

If you do not use Angular framework, you can install @micro-sentry/browser module to create client manually.

const client = new BrowserMicroSentryClient({
  dsn: 'https://kj12kj1n23@sentry.domain.com/123',
});

try {
  // your app code
} catch (e) {
  client.report(e);
}

Core Functionality

  • πŸ“€ Send Errors with Stack Trace
  • πŸ“© Send Messages
  • 🚫 Ignore URLs | Errors: With strings or RegExps
  • 🍞 Breadcrumbs plugin: Track and manage the sequence of events leading up to an error for comprehensive debugging
  • 🌟 Enrich Errors with Tags, User, Context: Augment error reports with additional context, user information, and tags for deeper insights

This list encapsulates the key functionalities supported by micro-sentry, emphasizing its focus on essential error tracking and management.

Core team

Igor Katsuba
Igor Katsuba
Roman Sedov
Roman Sedov

License

πŸ†“ Feel free to use our library in your commercial and private applications

All micro-sentry packages are covered by Apache 2.0

Read more about this license here