loggit
v1.1.1
Published
A simple and beautiful logging utility for NodeJS.
Downloads
11
Maintainers
Readme
loggit
is a simple yet robust logger utility for NodeJS. To a degree, it is a wrapper around chalk
+ console.log
, so that I don't need to install chalk
in every project and to standardize the way I do logging in various projects.
Install
You can install it with NPM or Yarn:
yarn add loggit
npm install loggit
Usage
loggit
exposes two modules:
log
- A very simple logger function.createLogger
- Returns a customized logger function.
log
Provide log
with a message string, as well as an optional color (of type chalk.ForegroundColor
), and it will be logged to the console.
import { log } from 'loggit';
log('hello world');
log('some error', 'red');
Argument | Type | Default
---|---|---
message
| string
| -
color
| chalk.ForegroundColor
| 'whiteBright'
createLogger
createLogger
allows you to create loggers for various different "tasks" in your app/script. It is more akin to something like winston
than a regular console.log
, in that it will log a timestamp and make your "task" very visible using a chalk.BackGroundColor
.
import { createLogger } from 'loggit';
// Create a simple logger with default options
const logInfo = createLogger('info');
// Create a success logger, where the "task" will be logged with a green BG.
const logSuccess = createLogger('success', {
taskColor: 'bgGreen',
});
// Create an error logger, where the "task" will be red and the timestamp will be bright magenta.
const logError = createLogger('error', {
taskColor: 'bgRed',
timestampColor: 'redBright',
});
// Use the loggers
logInfo('Started the app');
logSuccess('Things are going well');
logError('Uh oh, something went wrong');
This example would write the following to the console:
Argument | Type | Default
---|---|---
task
| string
| -
config
| CreateLoggerConfig
| See below.
config.taskColor
| chalk.BackgroundColor
| 'bgCyanBright'
config.timestampColor
| chalk.ForegroundColor
| 'cyanBright'
Note that createLogger
returns the log
function, meaning that you can also customize the message color when using your custom logger.
import { createLogger } from 'loggit';
const logInfo = createLogger('info');
logInfo('I will be yellow!', 'yellow');
Contributing
If you have ideas or suggestions on how to improve this package, feel free to file an issue or better yet open a pull request! Please follow the existing code style (enforced by ESLint anyway), and please add/alter unit tests for any new or changed functionality.
License
Licensed under MIT.
✌️ Made by Dave