loggin-js

๐Ÿ“ Customizable and expandable logger for Node.js

View on GitHub
![](https://vectr.com/nombrekeff/e709ORPLB.svg?width=320&height=320&select=b15wIepEy7) [![NPM Version][npm-image]][npm-url] [![Downloads][downloads-badge]][downloads-link] [![Dependencies][dependencies-badge]][dependencies-link] [![Known Vulnerabilities][vulnerabilities-badge]][vulnerabilities-link] [![NPM Package Quality][code-quality-badge]][code-quality-link] [![NPM Package Size][pkg-size-badge]][pkg-size-link] [![All Contributors](https://img.shields.io/badge/all_contributors-2-orange.svg?style=flat-square)](#contributors-) An easy and customizable logger for NodeJS and the Browser. If you want to log easily or create some complex loggin system, this might be the tool for you! --- [`๐Ÿ”ง Demo`][demo] [`๐Ÿ““ Wiki`][wiki] [`๐Ÿ”— Logger`][docs:logger] [`๐Ÿ”— Notifier`][docs:notifier] [`๐Ÿ”— Log`][docs:log] [`๐Ÿ”— Severity`][docs:severity] [`๐Ÿ”— Formatter`][docs:formatter] [`๐Ÿ”— .logger`][docs:helper:logger] [`๐Ÿ”— .notifier`][docs:helper:notifier] [`๐Ÿ”— .severity`][docs:helper:severity] [`๐Ÿ”— .formatter`][docs:helper:formatter]

News

Table Of Content

Usefull links:

Installing

$ npm i loggin-js
#ย or
$ yarn add loggin-js

Importing

const loggin = require('loggin-js');
// Or
import * as loggin from 'loggin-js';

Browser

!! NOTICE !!

Logginโ€™JS can be used in the browser, but itโ€™s still in itโ€™s early stages, and the API may change or have errors.

It is also limited. For now, only the console notifier works. Color is not working either!

<!-- Import from node_modules -->
<script src="node_modules/loggin-js/dist/loggin.js"></script>

<script>
  LogginJS.logger();
</script>

You can also use a CDN:

<script src="https://cdn.jsdelivr.net/npm/loggin-js@latest/dist/loggin.js"></script>

Getting Started

The default logger is the simplest way to use Logginโ€™JS.

loggin.debug(
  'Check this log out!!',
  { foo: 'var' },
  { channel: 'my-logger' }
);

Example Output 1

Additionaly you can create a custom logger:

const logger = loggin.logger({
  level: loggin.severity('info'), // Will output only info level and below
  channel: 'demo-1',
  formatter: 'long',
});

logger.user('Jhon');
logger.color(true);

logger.debug('Debug message, will not output');
logger.info('Info message, will output');

// You can override options when executing .log or any default methods (ie: debug, info, etc...)
logger.error('There was an <%rERROR>', null, { user: 'Bob' });

You can also log to a file:

const logger = loggin.logger('file');
logger.channel('my-logger');

logger.getNotifier('file').pipe(loggin.pipe('DEBUG', './debug.log'));

loggin.debug('Check this log out!!', { foo: 'var' });

Or output log in JSON format:

const logger = loggin.logger({
  formatter: 'json',
});

logger.error('this is an error');

There are a couple of default Notifiers available:

  • NodeJS: file, console, http, memory
  • Browser: console, http

Chek out the wiki for a more detailed guide.

back to top


Examples

Here are some usage examples:

If you want to add an example or find some error, leave an issue or send in a PR.

Plugins

Coming:

Coverage

Coverage Coverage Coverage Coverage

Contributing

First off, thank you for considering contributing to Logginโ€™JS.

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests. There is also a public slack channel available.

Contributors โœจ

Initial work by nombrekeff

Thanks goes to these wonderful people (emoji key):


Manolo Edge

๐Ÿ’ป ๐Ÿค” ๐Ÿšง โš ๏ธ

Floki

๐Ÿ“–

This project follows the all-contributors specification. Contributions of any kind welcome!

License

This project is licensed under the MIT License - see the LICENSE.md file for details.