3.1.1 • Published 11 months ago

@nrchkb/logger v3.1.1

Weekly downloads
1
License
Apache-2.0
Repository
github
Last release
11 months ago

@nrchkb/logger

Unified Logger for Node-RED nodes (using debug)

@nrchkb/logger

Install

npm i -d @nrchkb/logger

How to use

There are 3 types of messages:

  • Debug - for standard debug purpose.
  • Error - for printing errors, this level is enabled by default.
  • Trace - for printing detailed messaged.

Code

import {logger} from "@nrchkb/logger";

const log = logger('YOUR_NODE_SHORT_NAME')

log.debug('Debug message')
log.error('Error message')
log.trace('Trace message')

Start you app in with DEBUG env

DEBUG=YOUR_BASE_NAMESPACE* yourApp.js

If you want you can pass addional parameters to logger method to make its log message more detailed

// Having Node-RED node in context, node name is TestHTTPNode, id is 1234567890
let log
log = logger('BASE_NAMESPACE', 'OUT', 'HTTP')
//or
log = logger('BASE_NAMESPACE', 'OUT', this.name, this)
  • First argument is namespace prefix used in log message BASE_NAMESPACE:OUT Some Message
  • Second argument is suffix namespace used in log message BASE_NAMESPACE:OUT Some Message
  • Third is a message prefix BASE_NAMESPACE:OUT [HTTP] Some Message
  • Forth, if provided will override message prefix with node name and id BASE_NAMESPACE:OUT [TestHTTPNode:1234567890] Some Message

Customization

Parameters

let LOGGER_DEBUG_COLOR = process.env.LOGGER_DEBUG_COLOR || '4'
let LOGGER_ERROR_COLOR = process.env.LOGGER_ERROR_COLOR || '9'
let LOGGER_TRACE_COLOR = process.env.LOGGER_TRACE_COLOR || '15'

let LOGGER_DEBUG_ENABLED =
        process.env.LOGGER_DEBUG_ENABLED &&
        process.env.LOGGER_DEBUG_ENABLED === 'true'
let LOGGER_ERROR_ENABLED =
        (process.env.LOGGER_ERROR_ENABLED &&
                process.env.LOGGER_ERROR_ENABLED === 'true') ||
        true
let LOGGER_TRACE_ENABLED =
        process.env.LOGGER_TRACE_ENABLED &&
        process.env.LOGGER_TRACE_ENABLED === 'true'

let LOGGER_TIMESTAMP_ENABLED = process.env.LOGGER_TIMESTAMP_ENABLED || false

Colors are defined via numbers. Depending on which device you are running your app different range of colors will be available. Please refer to https://jonasjacek.github.io/colors/ for Xterm color list

All params listed above can be either changed with env variable or setup method

env parameter

For example to change debug logs color to pin

LOGGER_DEBUG_COLOR=13 DEBUG=MYAPP* yourApp.js

setup method

All params are optional, so you can choose which you want to change

import {loggerSetup} from "@nrchkb/logger";

loggerSetup({
    debugColor: '9',
    debugEnabled: false,
    errorColor: '10',
    errorEnabled: false,
    traceColor: '11',
    traceEnabled: false
})

Do you need help with your setup?

Join us on our Discord server (click on the logo below)!

NRCHKB Discord

Contact us

3.1.1

11 months ago

3.1.0

11 months ago

3.0.0

12 months ago

2.0.2

1 year ago

2.0.1

1 year ago

2.0.0

2 years ago

1.3.3

4 years ago

1.3.2

4 years ago

1.3.1

4 years ago

1.3.0

4 years ago

1.2.0

4 years ago

1.1.0

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

1.0.0-dev.3

4 years ago

1.0.0-dev.2

4 years ago

1.0.0-dev.1

4 years ago

1.0.0-dev.0

4 years ago