/aio-lib-core-logging

Logger module for use by the Adobe I/O SDK

Primary LanguageJavaScriptApache License 2.0Apache-2.0

aio-lib-core-logging

Usage

let aioLogger = require('aio-lib-core-logging')('App')
aioLogger.info('Hello logs')

Output

Above code will log the following

[App /mynamespace/myaction] info: Hello logs

Where App would be the name of the application/module that is sending the logs.

Configuration

The logger can be customized by passing a config object at the time of creation.

let aioLogger = require('aio-lib-core-logging')('App', config)

The config object can have one or more of the following keys.

  • provider (logging provider. default is winston.)
  • logSourceAction (boolean to control whether to include the action name in the log message)
  • transports (array of custom winston transports)

Using Custom Logger

// Winston Logger
let aioLogger = require('aio-lib-core-logging')('App', {provider:'./WinstonLogger'})
aioLogger.info('Hello logs')

or

// Debug Logger
let aioLogger = require('aio-lib-core-logging')('App', {provider:'./DebugLogger'})

Sending logs to a file

let aioLogger = require('aio-lib-core-logging')('App', {transports: './logfile.txt' })

Using custom winston transports

const winston = require('winston')
let aioLogger = require('aio-lib-core-logging')('App', {transports: [new winston.transports.File({ filename: './winstoncustomfilelog.txt' })]})

Contributing

Contributions are welcomed! Read the Contributing Guide for more information.

Licensing

This project is licensed under the Apache V2 License. See LICENSE for more information.