1.2.1 • Published 1 year ago

wrinkle v1.2.1

Weekly downloads
3
License
MIT
Repository
github
Last release
1 year ago

wrinkle

Simple console and file logging utility.

Install

npm install wrinkle --save
// or with yarn
yarn add wrinkle

Usage

const Wrinkle = require('wrinkle');

const logger = new Wrinkle({ toFile: true, logLevel: 'debug' });

logger.debug('Entered spinCogs().');
logger.info('All cogs started successfully.');
logger.warn('Something is smoldering, somewhere. . .');
logger.error('The flames, oh the flames!');

// use json stringify for objects
logger.debug('cog', JSON.stringify({ rotations: 9372, screeches: 1941 }));

Full Setup

Make a file (logger.js or otherwise) in the directory of your choosing. Export the wrinkle logger.

const Wrinkle = require('wrinkle'); // or with mjs: import Wrinkle from 'wrinkle';
const logger = new Wrinkle({
  toFile: true,
  logLevel: process.env.LOG_LEVEL,
  fileDateTimeFormat: 'LL-dd-yyyy_H-m',
  maxLogFileSizeBytes: 5000,
});

module.exports = logger;

Import it where needed

const logger = require('<pathToLogger>/logger');

// do logging
logger.debug('Res body logging middleware says:,', JSON.stringify(body));

Other Usage

// ...

// will create the write stream, if the stream has ended.
logger.create();

// destroy the write stream
logger.destroy();

// end the write stream
logger.end();

Configuration

NameDefaultDescription
logLevelproduction: 'error', development: 'debug'Logs this level and 'up.' One of: 'debug', 'info', 'warn', 'error'.
toFilebooleanWhether or not to write logs to a file.
logDir./logsLog directory location.
fileDateTimeFormatLL-dd-yyyy (daily)Uses date-fns format().
logDateTimeFormatLL-dd-yyyy HH:mm:ss.SS (02-03-2023 01:07:33.49)Uses date-fns format().
maxLogFileSizeBytesNo max sizeMax log file size in bytes. e.g. 5000000 (5mb)
unsafeModebooleanTrue if you would like to set a log directory location 'above' the current directory.
extension.logChange the file extension.
maxLogFileAgenull\<num>:\<timeType> One of: 'month|months', 'week|weeks', 'day|days', 'hour|hours', 'minute|minutes', 'second|seconds. e.g. '1:day' or '2:weeks'
1.2.0

1 year ago

1.1.1

1 year ago

1.0.2

1 year ago

1.1.0

1 year ago

1.0.1

1 year ago

0.8.8

1 year ago

0.8.5

1 year ago

0.8.4

1 year ago

0.8.7

1 year ago

0.8.6

1 year ago

1.2.1

1 year ago

0.11.0

1 year ago

0.11.1

1 year ago

0.11.2

1 year ago

0.10.0

1 year ago

0.1.0

1 year ago

0.0.1

1 year ago

0.3.0

1 year ago

0.2.0

1 year ago

0.0.2

1 year ago

0.9.0

1 year ago

0.8.1

1 year ago

0.8.0

1 year ago

0.6.2

1 year ago

0.8.3

1 year ago

0.9.1

1 year ago

0.8.2

1 year ago

0.5.0

1 year ago

0.4.0

1 year ago

0.7.0

1 year ago

0.6.1

1 year ago

0.6.0

1 year ago

1.0.0

6 years ago