1.0.9 • Published 3 years ago

separated-logger v1.0.9

Weekly downloads
-
License
MIT
Repository
-
Last release
3 years ago

Expanded logging library for express

This library was created according to requirements of separated business and may not be suitable for wide usage.

Prerequisites

This project requires NodeJS (version 16 or later) and NPM. Node and NPM are really easy to install. To make sure you have them available on your machine, try running the following command.

$ npm -v && node -v
8.3.1
v16.14.0

Installation

To install and set up the library, run:

$ npm install separated-logger -save

Usage

There are 2 ways to use logger, with output to console, or sended bu UDP. if you want to use only console, you should enter only logger name in params

basic params

const { ExpandedLogger } = require('separated-logger');
const logger = new ExpandedLogger({ name: 'logger-name' });

to send logs to logstash use example below

const { ExpandedLogger } = require('separated-logger');
const logger = new ExpandedLogger(
    {     
        "name": "logger name",
        "transport": "logstash",
        "host": "192.168.0.1",
        "port": 10517,
        "maskCard": true,
        "addNumericalData": true,
        "numericalDataMinLength: 4
    });

logger config params

Paramis requiredDescription
nametrueName of your logger or application
transportfalseTransport. Can be logstash or console
hostfalseyour logstash host. is required if transport is logstash
portfalseyour logstash port. is required if transport is logstash
maskCardfalsemask credit cards in logs. Default false
addNumericalDatafalseAdds an array of digits found in the message to separated param. Default false
numericalDataMinLengthfalsemin lengtth of number for adding to numericalData field. Default 4

API

log, info, warn, error, debug

const { ExpandedLogger } = require('separated-logger');

const logger = new ExpandedLogger({ name: 'logger-name' });
logger.log('message');
logger.info('message');
logger.info({ message: 'message' });
logger.error(new Error('error message'));
logger.error('error message');

addLogger

addLogger is express middleware to log requests

const express = require('express');
const { ExpandedLogger } = require('separated-logger');

const app = express();

const logger = new ExpandedLogger({ name: 'logger-name' });
logLib.addLogger(app);

Example output

[2022-09-22T10:54:40.414Z][node][info] {
  method: 'GET',
  url: 'http://localhost:3000/',
  ip: '::ffff:127.0.0.1',
  body: {},
  query: {},
  status: 304
}

axiosInterceptor

Log reqeust and response to 3rd party srvices, add random request id to each reqeust.

const { ExpandedLogger } = require('separated-logger');
const logger = new ExpandedLogger({ name: 'logger-name' });

const axios = logger.axiosInterceptor('3rd party servide name');
await axios('https://google.com');
1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago