Noteworthy Programming Masterpiece

    slf
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.3 • Public • Published

    slf

    Surikat Log Facade

    Install

    npm install --save slf

    API

    Get a logger

    import {LoggerFactory} from 'slf';
     
    const log = LoggerFactory.getLogger('name');
     
    const log = LoggerFactory.getLogger('name:subname:subsubname');
     

    Logging

    log('Hello!') // As level info
    log.log('info', 'Hello!'); // as level info
    log.log('Hello!') // as level info (implicit)
     
    log.trace('My Trace');
    log.debug('My Debug');
    log.info('My Info');
    log.warn('My Warning');
    log.error('My Error');
    log.critical('My Critical Error');

    Formatting

    Using util.format(...)

    • %s - String.
    • %d - Number (both integer and float).
    • %j - JSON. Replaced with the string '[Circular]' if the argument contains circular references.
    • %% - single percent sign ('%'). This does not consume an argument.
    log.info('My Formatted %s', 'Message')
    >> 'My Formatted Message'
    log.info('My Formatted %d', 123)
    >> 'My Formatted 123'
    log.info('My Formatted %d', 123)
    >> 'My Formatted 123'

    Json Formatting

    log.info({a: 'aloha'})
    >> {a: 'aloha'}
    log.info('My Formatted %d', 123)
    >> 'My Formatted 123'
    log.info('My Formatted %d', 123)
    >> 'My Formatted 123'

    Configuring a Provider

    LoggerFactory.setFactory(<factory-function>);
    LoggerFacotry.setFactory(ConsoleLogger);

    Writing a Provider

    SLF is nothing without a backing logging implementation. The most tiny implementation of a console.log based implementation is shipped with SLF

    API

    factory-function has the following signature:

    function(loggerName) {
      return function(event) {
        //do something with logEvent
      }
    }
    event = {
      timeStamp: 123456767,
      params: [],
      name: 'logger:name'
      level: 'error'
    }

    Keywords

    Install

    npm i slf

    DownloadsWeekly Downloads

    72

    Version

    1.0.3

    License

    MIT

    Unpacked Size

    12.7 kB

    Total Files

    11

    Last publish

    Collaborators

    • surikat