README
Logner
Simple logger for your NodeJS application.
NOTE: This module is meant for Node.JS applications, not Web Browser.
Installation
npm install logner --save
Usage
To define log directory you need to call .configure function in your application's main file.
- main.js
const { resolve } = require('path');
const log = require('logner');
// Basic Usage
log.configure({ rootDir: resolve(__dirname, 'logs') });
// Advanced Usage - Customize all properties
log.configure({
rootDir: resolve(__dirname, 'logs'),
logFiles: {
info: true, // info will be now logged into file
warn: true, // warn will be now logged into file
debug: true,
success: true,
error: true
},
// To Store logs in one directory instead of grouping by date you can use following:
// output: ./logs/<today>_<type>.log
logFormat: {
date: 'YYYYMMDD',
directoryName: '%root%',
fileName: '%date%_%type%'
},
colors: {
info: 'cyan',
warn: 'yellow',
debug: 'magenta',
success: 'green',
error: 'red'
}
});
log.info('this is info message!');
log.error('this', 'is', 'error', 'message!');
log.warn('this', 'is', 'warning', 'message!');
log.success('this', 'is', { success: 'message' });
log.debug(['this', 'is', 'debug', 'message!']);
// Using chalk. See all chalk options: https://www.npmjs.com/package/chalk#usage
const chalk = require('chalk');
log.info('this', 'is', chalk`{blue CHALK}`, 'message!');
- some-other-file.js
const log = require('logner');
log.info('this is info message from some-other-file.js!');
Options
Key | Type | Description | Required | Default |
---|---|---|---|---|
rootDir | string |
Log directory path. | :white_check_mark: Yes | N/A |
logFiles | object |
Toggle which category can log into file. | :white_check_mark: No | See: Options: logFiles |
logFormat | object |
Change format log files. | :white_check_mark: No | See: Options: logFormat |
colors | object |
Change specific category default color. | :white_check_mark: No | See: Options: colors |
Options: logFiles
|Key|Type|Description|Required|Default|
|---|----|-----------|--------|-------|
|info |boolean
or number
|Allow 'info' logs to be stored into file. |No| false
|
|warn |boolean
or number
|Allow 'warning' logs to be stored into file.|No| false
|
|debug |boolean
or number
|Allow 'debug' logs to be stored into file. |No| true
|
|success|boolean
or number
|Allow 'success' logs to be stored into file.|No| true
|
|error |boolean
or number
|Allow 'error' logs to be stored into file. |No| true
|
Options: logFormat
- See all available date formats @moment
- Available directoryName shortcuts:
%root%
|%date%
|%type%
- Available fileName shortcuts:
%date%
|%type%
Shortcuts:
%root%
= value from options.rootDir%date%
= value from options.logFormat.date%type%
= log type:INFO
|WARN
|DEBUG
|SUCCESS
|ERROR
Key | Type | Description | Required | Default |
---|---|---|---|---|
date | string |
Date format for %date% parameter | No | YYYY.MM.DD |
directoryName | string |
Allow 'warning' logs to be stored into file. | No | %root%/%date% |
fileName | string |
Allow 'debug' logs to be stored into file. | No | %type% |
Options: colors
- See all available colors @chalk
Key | Type | Description | Required | Default |
---|---|---|---|---|
info | string |
Allow 'info' logs to be stored into file. | No | cyan |
warn | string |
Allow 'warning' logs to be stored into file. | No | yellow |
debug | string |
Allow 'debug' logs to be stored into file. | No | magenta |
success | string |
Allow 'success' logs to be stored into file. | No | green |
error | string |
Allow 'error' logs to be stored into file. | No | red |