node-chroma-logger
v1.1.0
Published
A zero-dependency minimalist asynchronous Node.js chromatic logger
Downloads
1
Readme
node-chroma-logger
Table of Contents
- Presentation
- Installation
- Technical information
- Requirements
- Usage
- Known issues
- Code of Conduct
- Contributing
- Support
- Security
- License
Presentation
A zero-dependency minimalist asynchronous Node.js chromatic logger. When you want colors, don't want to use mainly synchronous logging methods of Console
and get rid of a complex logger.
Installation
npm install --save node-chroma-logger
Technical information
Stack
- Language: JavaScript ES6/ES7
- Node.js >= Dubnium (10.22.1)
Code quality
Code style follows Airbnb JavaScript Best Practices using ESLint.
Tests
Mocha and Chai for unit testing.
Security
- Code security and most precisely module dependencies can be audited running
npm audit
.
Requirements
- See Stack
Usage
Environment variables
| name | description | required | default |
| :--- | :---------- | :-------- | :----- |
| NODE_CHROMA_LOGGER_DISABLE_COLOR | Wether to disable setting color (escape sequences). It is especially needed if the terminal does not have the feature to display colors at all or you just don't want any color. It is always set to false
so that terminals that are not detected as able to display colors like for Gitlab CI pipelines for an example can always have colors displayed. Accepted values: true
or 1
. | | false
|
| NODE_CHROMA_LOGGER_DISABLE_DATE_FORMAT | Wether to disable showing date in the log format. Accepted values: true
or 1
. | | false
|
| NODE_CHROMA_LOGGER_DISABLE_SEVERITY_FORMAT | Wether to disable showing severity in the log format. Accepted values: true
or 1
. | | false
|
| NODE_CHROMA_LOGGER_SEVERITY | Logger severity selected. See logger severities. Higher severities, if any, are activated. | | trace
|
Severities
Sorted by highest to lowest severity.
| severity | description | color | data stream |
| :------- | :---------- | :---- | :---------- |
| fatal | The service/app is going to stop or become unusable now. An operator should definitely look into this soon. | background light red
| stderr
|
| error | Fatal for a particular request, but the service/app continues servicing other requests. An operator should look at this soon(ish). | red
| stderr
|
| warn | A note on something that should probably be looked at by an operator eventually. | yellow
| stderr
|
| info | Detail on regular operation. | cyan
| stdout
|
| log | Detail on regular operation. Same severity rank as info
. | default
| stdout
|
| success | Detail on a successful operation. Same severity rank as info
. | green
| stdout
|
| debug | Anything else, i.e. too verbose to be included in info
severity. | light magenta
| stdout
|
| trace | Logging from external libraries used by the app or very detailed application logging. | dark gray
| stdout
|
| disable | Logging is disabled. | none | none |
Import
const logger = require('node-chroma-logger');
Lib
logger
<Object> with the following properties.
fatal
fatal(args)
<Function>args
<Any>
Example:
logger.fatal('this was fatal, this has to stop!');
error
error(args)
<Function>args
<Any>
Example:
logger.error('this was an error!', new Error('bad stuff'));
warn
warn(args)
<Function>args
<Any>
Example:
logger.warn('ooooooops, be careful');
info
info(args)
<Function>args
<Any>
Example:
logger.info('this is so helpful thanks');
log
log(args)
<Function>args
<Any>
Example:
logger.log('log is at same level as info but without any specific color');
success
success(args)
<Function>args
<Any>
Example:
logger.success('same as above, let\'s go!!');
debug
debug(args)
<Function>args
<Any>
Example:
logger.debug({ hello: 'world' }, 'hi', 'this is just to have this info with some more details');
trace
trace(args)
<Function>args
<Any>
Example:
logger.trace('this is a very detailed log', { details: 100 }, ['details', 'details']);
Errors
None.
Development
Linting
npm run lint
Unit test
npm test
Known issues
/
Code of Conduct
This project has a Code of Conduct. By interacting with this repository, organization, or community you agree to abide by its terms.
Contributing
Please take a moment to read our Contributing Guidelines if you haven't done so yet.
Support
Please see our Support page if you have any questions or for any help needed.
Security
For any security concerns or issues, please visit our Security Policy page.
License
MIT.