angie-log

    0.10.0 • Public • Published

    emblem

    Angie Log

    An extremely lightweight logging utility for NodeJS built in ES6

    npm version iojs support node support npm downloads build status Coverage Status documentation

    NPM

    About

    Angie Log is designed as an extremely lightweight logging utility for NodeJS which will:

    • Prettify the terminal output using the Chalk package
    • Provide utilities for printing useful and informative terminal output
    • Create asynchronously written, non-blocking log files to maintain said useful and informative output based on well-defined JS log levels

    Usage

    npm i -g angie-log

    If Used Standalone

    import { default as Log } from 'angie-log';
     
    // Call a new logger with defaults
    let logger = new Log({
            outfile:    'log.log',              // Set the outfile
            file:       'log.log',              // Equivalent to `outfile`
            name:       'test',                 // Set the name of the logger
            timestamp:  true,                   // Controls whether the logfile output has a timestamp
            level:      'debug',                // Sets a single log level
            levels:     [ 'info', 'debug' ],    // Sets many available log levels
            logLevel:   'debug',                // Equivalent to `level`
            logLevels:  [ 'info', 'debug' ],    // Equivalent to `levels`
            silent:     false                   // Controls whether the log instance should output into the terminal as well
        }),
        err = new Log('log.log', 'test', true, 'error', false);
     
    // Call the loggers with the string "test"
    logger.info('test');
    err.error('test');
     
    // $setOutfile to change the output file
    log.$setOutfile(`${process.cwd()}/angie.log`);
     
    // $setName to change the name of the logger and what is logged in the outfile
    log.$setOutfile('test');
     
    // $setTimestamp to toggle timestamps in the log output
    log.$setTimestamp(true);
     
    // $setLevel to change the log level
    log.$setLevel(true);
     
    // $setSilent to prevent terminal output
    log.$setSilent(true);
     
    // Explicitly call the prettified terminal output
    Log.info('test');
    Log.debug('test');
    Log.warn('test');
    Log.error('test');

    If Used in an Angie Application

    Include the module in the same fashion as it is above, or wherever called modules are bound:

    @Controller
    class Test {
        constructor($Log) {
            $Log.info('The log module was included in a controller');
        }
    }

    The functions available on the Angie Log module are equivalent in either context.

    For a list of Frequently Asked Questions, please see the FAQ and the CHANGELOG for an up to date list of changes. Contributors to this Project are outlined in the CONTRIBUTORS file.

    Angie

    Please see the site for information about the project, a quickstart guide, and documentation and the CHANGELOG for an up to date list of changes.

    Install

    npm i angie-log

    DownloadsWeekly Downloads

    9

    Version

    0.10.0

    License

    MIT

    Last publish

    Collaborators

    • benderthecrime