Skip to content

Tiny Sentry client with idiomatic wrapper for Angular

License

Notifications You must be signed in to change notification settings

ihsnow/micro-sentry

 
 

Repository files navigation

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://[email protected]/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://[email protected]/123',
    }),
  ],
  providers: [
    // option 2: via provide
    provideMicroSentry({
      dsn: 'https://[email protected]/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://[email protected]/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

About

Tiny Sentry client with idiomatic wrapper for Angular

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 98.1%
  • JavaScript 1.4%
  • Other 0.5%