0.5.0 • Published 2 years ago

@vatr/logger v0.5.0

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

@vatr/logger

Fancy colorful console debugger with custom scope written in tiny TypeScript, ES module.

Example usage

import { createLogger } from 'https://esm.run/@vatr/logger';

const logger = createLogger('demo');

function sayHello (name: string) {
  logger.logMethodArgs('sayHello', {name});
}

Debug Mode

Many of the methods in the logger are no-ops when the debug mode is off.
Please remember to reload the window after changing the debug mode.

  • Debugging all scopes

    window.localStorage?.setItem('VATR_LOG', '*');
  • Debugging specific scope

    window.localStorage?.setItem('VATR_LOG', 'scope_name');
  • Debugging some scopes with pattern

    window.localStorage?.setItem('VATR_LOG', '*vatr*');

API

Prepare the logger

import {createLogger} from 'https://esm.run/@vatr/logger';
const logger = createLogger('logger/demo', 'green');

logProperty(property, value)

console.debug property change.

Example:

logger.logProperty('name', 'ali');

logMethod(method)

console.debug function or method calls.

Example:

function myMethod () {
  logger.logMethod('myMethod');
}

logMethodArgs(method, args)

console.debug function or method calls with arguments.

Example:

function myMethod (a: number, b: number) {
  logger.logMethodArgs('myMethod', {a, b});
}

logMethodFull(method, args, result)

console.debug function or method calls with arguments.

Example:

function add (a: number, b: number): number {
  const result = a + b;
  logger.logMethodFull('add', {a, b}, result);
  return result;
}

incident(method, code, description, ...args)

console.trace an event or expected accident. (not warn or error)

Example:

logger.incident('fetch', 'abort_signal', 'aborted signal received', {url: '/test.json'});

accident(method, code, description, ...args)

console.warn an unexpected accident or error that you handled.

Example:

logger.accident('fetch', 'file_not_found', 'url requested return 404 not found', {url: '/test.json'});

error(method, code, errorStack, ...args)

console.error an unexpected error.

Example:

try {
  ...
}
catch (err) {
  logger.error('myMethod', 'error_code', (err as Error).stack || err, {a: 1, b: 2});
}

logOther(...args)

Simple console.debug with styled scope.

Example:

logger.logOther('foo:', 'bar', {a: 1});
0.3.0

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.5.0

2 years ago

0.4.0

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago