1.2.0 • Published 10 years ago

rapidus-configure v1.2.0

Weekly downloads
53
License
ISC
Repository
github
Last release
10 years ago

rapidus-configure

NPM Version Build Status Coverage Status

Keep your logging setup in a configuration file.

Installation

npm install --save rapidus-configure

Usage

configure(config, <hier>, <module>)

Calling the exported function with a configuration hash will take care of creating and configuring the specified loggers, sinks and processors. It expects a plain object but you probably want to load from a configuration file but that is left to the user.

configure(
  { logger:
    { db: { level: 'WARN' }
    , web: { level: 'DEBUG' }
    }
  , sinks:
    [ { type: 'console'
      , format: ':name - :levelName - :message'
      }
    ]
  })

By default it will configure the main logger hierarchy exported by rapidus and load modules relative to itself. If you are creating a separate hierarchy or want to load functions from within your app you need to use the extra parameters of configure.

var rapidus = require('rapidus')
  , configure = require('rapidus-configure')
  , hier = rapidus.createHierarchy()

configure({...}, hier, module);

Options

  • proxy - Boolean

    If true configure cluster workers to proxy their messages to the master. Default false.

  • defaultProcessors - Array

    An array of options for processors that will be applied to all loggers.

  • sinks - Array

    An array of options for sinks that will be connected to the root logger.

  • logger - Object

    A mapping from logger name to logger settings.

Logger options

  • propagate - Boolean

    If false configure the logger to not propagate events further up the hierarchy. Default true.

  • level - Number|String

    The minimum log level that needs to be met for a message to be processed.

  • sinks

    An array of options for sinks that will be connected to the logger.

  • processors - Array

    An array of options for processors that will be applied to the logger.

Sink options

  • type - String

    A string specifying the factory method to use to create the sink.

  • format - Object

  • format.type - String

    A string specifying the factory method to use to create the formatter.

  • format.* Other options are passed through as is and their use depends on the type.

  • * Other options are passed through as is and their use depends on the type.

Processor options

  • type - String

    A string specifying the factory method to use to create the sink.

  • * Other options are passed through as is and their use depends on the type.

Resolving functions

In any part of the configuration that calls for a type a string made up of a module path as used in require() optionally followed by a attribute name within brackets is expected.

e.g module/submodule[attribute] is equivalent to require('module/submodule').attribute

Relative paths are supported but will be loaded relative to rapidus-configure unless the root module is specified when calling configure

Mighty Hogweed is avenged.

1.2.0

10 years ago

1.1.1

10 years ago

1.1.0

10 years ago

1.0.0

10 years ago

0.2.0

10 years ago

0.1.1

11 years ago

0.1.0

11 years ago

0.0.4

11 years ago

0.0.3

11 years ago

0.0.2

11 years ago

0.0.1

11 years ago