js-standard-logger
A useful standard Logger for JS, based on winston, formatting simple output for log, saving to demanded path.
Common output as: [2018-12-11 09:41:19] [info] [sample-label] --- it s info
1. Install
$ npm install --save js-standard-logger
2. Usage
const Logger = const logger = '/data/logs/logger-sample/' // simply initialize logger // default for info level output//[2018-12-11 09:41:19] [info] [sample-label] --- it s info logger // choose diff level//[2019-03-27 14:20:55] [warn] [test] --- {// "it": "can be object",// "also": [// "can",// ...// ]//} logger // do log and throw err, which required try-catch//[2018-12-11 09:41:19] [error] [sample-label] --- log and throw err logger // log err stack//[2019-01-29 09:29:43] [error] [test] --- it s error . err stack : TypeError: get type error// at Object.<anonymous> (/home/roren/Documents/source/self/logger/test.js:9:45)// at Module._compile (internal/modules/cjs/loader.js:686:14)// ...
3. Api
Init
Please fill with absolute path.
const Logger = const logger = '/data/logs/log-save-dir/' 'log-name.log''default-label' Logger
arguments | required | description |
---|---|---|
log_save_dir | true | dir abstract path to save log (auto mkdir if not exists) |
log_name | false | default to "app.log" |
label | false | label to differ log, default to log_name |
view_level | false | choose viewing output level, using Logger fields, default to debug |
Function
logger.exec()
Do log on message with different level
arguments | required | description |
---|---|---|
message | true | message to log |
level | false | tag the label according to level field, default to info |
err | false | Error instance, will logged stack |
logger.exceptionThrows()
Do log on message and throw error, which recommended to catch outside
arguments | required | description |
---|---|---|
message | true | message to log |
level | false | tag the label according to level field, default to error |
Logger.inspect()
inspect object to view
arguments | required | description |
---|---|---|
object | true | inspect object |
Logger.stringify()
Transform object to string when logging
arguments | required | description |
---|---|---|
object | true | stringify object type to do log |
pretty | false | pretty json output, default false |
Field
Different level fields to choose
Fields | Level | Description |
---|---|---|
Logger.DEBUG() | debug | tags for development debug |
Logger.INFO() | information | tags for information |
Logger.WARN() | warning | tags for that be bad for some features |
Logger.ERROR() | error | tags for that intercept process or functional crash |