1.0.0 • Published 3 years ago

@anonymous-development-projects/js-logger v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

Frontend logger

Russian | English

console-output

Logger for browsers with opportunity to working together with Sentry.

Runbook

Install

npm i @anonymous-development-projects/js-logger

Usage

Basic usage:

import Logger from '@anonymous-development-projects/js-logger';

const logger = new Logger();

// if you dont want showing messages in console
// const logger = new Logger(false); 

// errorHandler - handling from logger.error and logger.fatal
logger.setErrorHandler((error) => {
  // for example sending to Sentry
  // Sentry.captureException(error);
})

logger.removeErrorHandler();

logger.info('Info');
logger.debug('Debug', 'message');
logger.error(new Error('Error message')); // errorHandler will be executed if errorHandler is present

Interface:

interface Logger {
  
    constructor(showOutput?: boolean); // show to console

    // you can use error handler for sending reports to sentry
    setErrorHandler(handler: (err: Error) => void): void;
    removeErrorHandler(): void;
    
    // logger methods
    error(...args: unknown[]): void;
    fatal(...args: unknown[]): void;
    fav(...args: unknown[]): void;
    info(...args: unknown[]): void;
    star(...args: unknown[]): void;
    success(...args: unknown[]): void;
    wait(...args: unknown[]): void;
    warn(...args: unknown[]): void;
    complete(...args: unknown[]): void;
    pending(...args: unknown[]): void;
    note(...args: unknown[]): void;
    start(...args: unknown[]): void;
    pause(...args: unknown[]): void;
    debug(...args: unknown[]): void;
    await(...args: unknown[]): void;
    watch(...args: unknown[]): void;
    log(...args: unknown[]): void;
}