loguno
TypeScript icon, indicating that this package has built-in type declarations

2.0.2 • Public • Published

LogUno

One logger, many outlets

  • TypeScript supported
  • CommonJS (Node.js) supported
  • ECMAScript Modules (ESM) supported

npm-version npm-downloads

Table of Contents

Installation

npm i loguno # includes type definitions for TypeScript support

Example

./
|__index.js
|__moduleA.js
|__moduleB.js
/* index.js */
import { Level, Logger, Template } from "loguno";
import moduleA from "./moduleA";
import moduleB from "./moduleB";

Logger.addOutlet("index", "var/index.log", {
  isolated: false,
  threshold: Level.WARN,
  template: Template.dlom
});

Logger.logWarn("Message sent from 'index.js'");
Logger.logDebug("Given this outlet's threshold, this will not appear on 'index.log'");

moduleA();
moduleB();

/* moduleA.js */
import { Logger, Level, Template } from "loguno";

export default function main() {
  Logger.addOutlet("moduleA", "var/moduleA.log", {
    isolated: true,
    threshold: Level.TRACE,
    template: Template.lm
  });

  Logger.logInfo("Message sent from 'moduleA.js'. This will only appear on 'moduleA.log'");
  Logger.logWarn("This will appear on both 'index.log' and 'moduleA.log'");
}

/* moduleB.js */
import { Logger } from "loguno";

export default function main() {
  Logger.logWarn("This will only appear on 'index.log'");
}
node index.js

Since Logger starts with one outlet to stdout by default, running the above example would log the following to stdout:

output

The following diagram illustrates what happened:

example

Documentation

See here.

License

MIT

Package Sidebar

Install

npm i loguno

Weekly Downloads

1

Version

2.0.2

License

MIT

Unpacked Size

26.5 kB

Total Files

6

Last publish

Collaborators

  • henryaguila