Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

logging-utils

Package Overview
Dependencies
Maintainers
1
Versions
54
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

logging-utils

Utilities for configuring simple log level based logging functionality on an object

  • 1.0.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
59
increased by11.32%
Maintainers
1
Weekly downloads
 
Created
Source

logging-utils v1.0.0

Utilities for configuring simple log level based logging functionality on an object.

The log levels supported are the following:

  • ERROR - only logs error messages
  • WARN - only logs warning and error messages
  • INFO - logs info, warning and error messages
  • DEBUG - logs debug, info, warning and error messages
  • TRACE - logs trace, debug, info, warning and error messages (i.e. all)

Main module:

  • logging-utils.js

This module is exported as a Node.js module.

Installation

Using npm:

$ npm i --save logging-utils

Usage

1. Configure logging:

  1. Require logging-utils
// To use the logging utilties
const logging = require('logging-utils');

// Logging configuration functions
const configureLogging = logging.configureLogging;
const isLoggingConfigured = logging.isLoggingConfigured;

// Log level constants
const ERROR = logging.ERROR;
const WARN = logging.WARN;
const INFO = logging.INFO;
const DEBUG = logging.DEBUG;
const TRACE = logging.TRACE;
  1. Provide a context object on which to configure logging, e.g:
const context = { a: 1, b: 2, c: 3 }; // replace with your own target object to be configured
  1. Configure logging on the context object
  • To configure default logging on an existing object:
configureLogging(context);
  • To configure WARN level logging on an existing object
configureLogging(context, WARN);
  • To configure specific logging (WITHOUT overriding any existing logging on context)
configureLogging(context, DEBUG, false, console, false, false);
  • To configure specific logging (OVERRIDING any existing logging on context!)
configureLogging(context, DEBUG, false, console, false, true);
  • To configure simple default logging on a new object
const log = configureLogging({});

2. Log messages

  • To log errors:
// Log an error with a strack trace
context.error('Error message 1', new Error('Boom').stack);

// Log an error without a stack trace
context.error('Error message 2');
  • To log warnings:
// Log a warning (or do nothing when warnings are disabled)
context.warn('Warning message 1');

// To avoid building the warning message (when warnings are disabled)
if (context.warnEnabled) context.warn('Warning message 2');
  • To log info messages:
// Log an info message (or do nothing when info messages are disabled)
context.info('Info message 1');

// To avoid building the info message (when info messages are disabled)
if (context.infoEnabled) context.info('Info message 2');
  • To log debug messages:
// Log a debug message (or do nothing when debug messages are disabled)
context.debug('Debug message 1');

// To avoid building the debug message (when debug messages are disabled)
if (context.debugEnabled) context.debug('Debug message 2');
  • To log trace messages:
// To log a trace message (or do nothing when trace messages are disabled)
context.trace('Trace message 1');

// To avoid building the trace message (when trace messages are disabled)
if (context.traceEnabled) context.trace('Trace message 2');

Unit tests

This module's unit tests were developed with and must be run with tape. The unit tests have been tested on Node.js v4.3.2.

See the package source for more details.

FAQs

Package last updated on 17 Oct 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc