Socket
Socket
Sign inDemoInstall

beautify-logs

Package Overview
Dependencies
6
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    beautify-logs

Elegant logs for your elegant apps with many available formats and Markdown formatting.


Version published
Weekly downloads
2
increased by100%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

✨ Beautify Logs

This library provides to your app a set of pretty and colorful log formats with different importance levels (debug, info, warn, error, and fatal). It even gives you the opportunity to use markdown in your logs.

📥 Installation

npm
npm install beautify-logs
yarn
yarn add beautify-logs
pnpm
pnpm add beautify-logs

🖐️ Getting Started

Import the main class
const { Logger } = require('beautify-logs');
Instantiate the imported class with your own options (check their description further below)
const logger = new Logger({ ... });
Start logging
logger.debug('Lorem Ipsum dolor sit amet.');

logger.info('Lorem Ipsum dolor sit amet.');

logger.warn('Lorem Ipsum dolor sit amet.');

logger.error('Lorem Ipsum dolor sit amet.');

logger.fatal('Lorem Ipsum dolor sit amet.');
Bonus: how to use the Logger class instance in any of your app file

To do so, simply assign the logger property to the process in your index file.

Object.assign(process, {
   logger: logger
});

process.logger.debug('The logger is now usable from anywhere!');

⚙️ Logger options

You can personalize your logger by providing your own options.

1. The format

You can choose one of the many available formats (check further below). Default value is: 0

const logger = new Logger({
   format: 3
});

logger.debug('This is the third format!');
Result :

Third Format Preview

2. The message splitting

You can provide as many messages as you want at once in a single log. This option allows you to wether split those or not. Default value is: false

const logger = new Logger({
   splitMessages: true
});

logger.debug('Hello, World!', 'How is your day going?');
Result :

Message Splitting Preview

const logger = new Logger({
   splitMessages: false
});

logger.debug('Hello, World!', 'How is your day going?');
Result :

Message Splitting Preview

3. The message formatting

You can choose to wether format the messages with some Markdown (bold, italic, underline, and URL coloring) or not. Default value is: true

const logger = new Logger({
   formatMessages: true
});

logger.debug('Here is some **bold**, *italic*, __underline__, and https://example.com/');
Result :

Message Formatting Preview

const logger = new Logger({
   formatMessages: false
});

logger.debug('Here is some **bold**, *italic*, __underline__, and https://example.com/');
Result :

Message Splitting Preview

🦋 Log Formats Preview

Format No. 0

Format No. 0 Preview

Format No. 1

Format No. 1 Preview

Format No. 2

Format No. 2 Preview

Format No. 3

Format No. 3 Preview

Format No. 4

Format No. 4 Preview

Format No. 5

Format No. 5 Preview

Format No. 6

Format No. 6 Preview

Format No. 7

Format No. 7 Preview

  • Note: The colors may slightly vary according to your terminal colors.
  • More formats will come soon!

🔎 Object Inspecting

If an object is given as a message instead of a string, the library will display its whole content using util.inspect(...) method.

Example
const user = {
   fullName: 'John Doe',
   birthDate: new Date(1989, 8, 22),
   hobbies: [
      'programming',
      'sport'
   ],
   familyMembers: {
      parents: {
         mother: 'Coralie Clark',
         father: 'William Doe'
      }
   }
};

logger.info('A user was created:', user);
Result :

Object Inspecting Example

Keywords

FAQs

Last updated on 11 May 2023

Did you know?

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc