A Sumor Cloud Tool.
More Documentation
This is a lightweight logger for Node.JS. It can output logs in different levels, and you can customize the scope, id, and timezone.
npm i @sumor/logger --save
Require Node.JS version 16.x or above
As this package is written in ES module,
please change the following code in your package.json
file:
{
"type": "module"
}
import Logger from '@sumor/logger'
const logger = new Logger()
logger.trace('Hello World!')
// You will see the following output:
// 2020-01-01 00:00:00.000 TRACE MAIN - Hello World!
For some case, we need categorize logs. scope
is used for this purpose.
import Logger from '@sumor/logger'
const logger = new Logger({
scope: 'DEMO'
})
logger.trace('Hello World!')
// You will see the following output:
// 2020-01-01 00:00:00.000 TRACE DEMO - Hello World!
For some case, we need identifier user. id
is used for this purpose.
import Logger from '@sumor/logger'
const logger = new Logger({
id: 'USER001'
})
logger.trace('Hello World!')
// You will see the following output:
// 2020-01-01 00:00:00.000 TRACE MAIN USER001 - Hello World!
Most of the time, we only need to output logs of a certain level. Then we can decide if store and display it or not.
import Logger from '@sumor/logger'
const logger = new Logger()
logger.trace('Hello World!') // trace is the lowest level, all logs will be output
logger.debug('Hello World!')
logger.info('Hello World!')
logger.warn('Hello World!')
logger.error('Hello World!')
logger.fatal('Hello World!') // fatal is the highest level, only critical error will be output
import Logger from '@sumor/logger'
const logger1 = new Logger({
offset: 2 * 60 // UTC+2 offset is 2 hours
})
logger1.info('Hello World!')
// You will see the following output:
// 2020-01-01 02:00:00.000 INFO MAIN - Hello World!
const logger2 = new Logger({
offset: 8 * 60 // UTC+8 offset is 8 hours
})
logger2.info('Hello World!')
// You will see the following output:
// 2020-01-01 08:00:00.000 INFO MAIN - Hello World!