@gloxy/unilog
TypeScript icon, indicating that this package has built-in type declarations

1.2.0 • Public • Published

Unilog

Log everywhere with unified title and symbol.

Install

npm install @gloxy/unilog

or

yarn add @gloxy/unilog

Usage

Constructor

import { Unilog } from '@gloxy/unilog';

const unilog = new Unilog('Play balls');
unilog.warn('Balls became worse', 3); // PRINT ⚠ Warn: Play balls. Balls become worse - 3
unilog.fail('Something wrong', { a: 1 }); // PRINT ✖ Fail: Play balls. Something wrong - { a: 1 }

Singleton

import unilog from '@gloxy/unilog';

function playBalls() {
  // Init log with a Title
  unilog('Play balls');
  try {
    unilog.info('Children are happy'); // PRINT ℹ Info: Play balls. Children are happy
    // Change title in midway temporarily (Will be consumed only once at next log action)
    unilog.mid('Break balls').warn('Balls became worse', 3); // PRINT ⚠ Warn: Break balls. Balls become worse - 3
    const sure = true;
    unilog.succeed('Balls are back to the basket.', sure); // PRINT ✔ Succeed: Play balls. Balls are back to the basket. - true
  } catch (error) {
    unilog.fail('Something wrong', error); // PRINT ✖ Fail: Play balls. Something wrong - Error...
  }
}

playBalls();
// Modify title permenantly
unilog('Finished');
unilog.info('All entertainments were closed'); // PRINT ℹ Info: Finished. All entertainments were closed

API

Constructor: new Unilog(title?) or Singleton: unilog(title?)

Create a unilog instance with or without title, which will be used as a unified title for log actions

Instance

Log actions

.info(...data?), .succeed(...data?), .warn(...data?), .fail(...data?), .debug(...data?).

data: multiple printed data passed to log actions. Data Type: Any supported type.

Logs with a unified title and symbol will be printed in the console of Browser or Node. If wanna use different title temporarily for a log action, use method .mid to set a midwayTitle before the log action. The midwayTitle will be consumed only once, which means rest log actions will still use the initialized title.

.debug won't print log if process.env.NODE_ENV === 'production'.

.getTitle

Get the present unified title

.setTitle

Set the unified title

.getMidwayTitle

Get the midway title, which temporary for next log action.

.setMidewayTitle

Set the midway title, which temporary for next log action.

.mid

Shortcut to setMidewayTitle.

Package Sidebar

Install

npm i @gloxy/unilog

Weekly Downloads

4

Version

1.2.0

License

ISC

Unpacked Size

10.5 kB

Total Files

6

Last publish

Collaborators

  • gloxy