dalog

1.0.2 • Public • Published

node-dalog

Simple Logger with spawning, source code and event tracing. ES6 compatible.

Usage

JS example:

var Logger = require('dalog').default;
logger = new Logger();
logger.log('Hello','world');

ES6 example:

import Logger from 'dalog';

export class MyApp {
  constructor {
    this.logger = new Logger();
    this.logger.log('Hello','world');
  }
}

This would log using console.log() and output something like:

[ead88891](app.js:3:8) Hello world

The format is as follows:

[$(id)]($(file):$(line):$(character)) $(message)

id: Random identificator to easily track source of evented log calls. Very useful when having many streams, log messages usually merge and mix, making traceability almost impossible.
file: Source file name that called the logger.
line: Line of source file in which the logger was called.
character: Position in line from which the logger was called.
message: Multiple arguments turned into string message, same as using console.

Console support

Logger is mounted over console, and supports .log(), .info(), .warn(), .error() and multiple arguments.

Spawning child loggers

It's possible to spawn the logger to trace specific events, for example:

var Logger = require('dalog').default;
appLogger = new Logger();
appLogger.log('Hello','world');

timerLogger = appLogger.spawn();
failLogger = appLogger.spawn();

setInterval(function() {
  timerLogger.info('Tick!', +new Date);
}, 1000);

setTimeout(function() {
  failLogger.error('Fail!');
  process.exit(1);
}, 5000);

It's similar to creating a new instance of the logger, but there are plans to trace back parent/children calls. Also date/time, format and other features on the bucketlist.

Output of example above:

[b3d3b328](app.js:3:11) Hello world
[3598caeb](app.js:9:15) Tick! 1661859488022
[3598caeb](app.js:9:15) Tick! 1661859489028
[3598caeb](app.js:9:15) Tick! 1661859490032
[3598caeb](app.js:9:15) Tick! 1661859491037
[4115b85d](app.js:13:14) Fail!

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i dalog

Weekly Downloads

1

Version

1.0.2

License

MIT

Last publish

Collaborators

  • daraosn