Numbers Produce Meaning

    @xutl/logline
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.2 • Public • Published

    @xutl/logline

    A simple utility for formatting rich log lines and writing them to streams. It also includes a mechanism to froward log-lines via UDP as well as parse log-lines back into JSON.

    Install

    npm install --save @xutl/loglines

    Usage

    import Logger from '@xutl/loglines';
    import * as PKG from './package.json;
    const logger = new Logger(PKG.name, PKG.version, process.stderr);
    
    logger.log('a string');
    logger.log(new Error('an error'));
    logger.log({ a: 1, b: 'two', e: new Error('hallo') });
    import { Sender } from '@xutl/loglines';
    import * as PKG from './package.json;
    
    // port & host are optional and default to 127.0.0.1:8787
    const sender = new Sender(PKG.name, PKG.version, 8787, '127.0.0.0');
    
    sender.log('a string');
    sender.log(new Error('an error'));
    sender.log({ a: 1, b: 'two', e: new Error('hallo') });
    import { Receiver } from '@xutl/loglines';
    import * as PKG from './package.json;
    
    // port & host are optional and default to 127.0.0.1:8787
    // if no stream is given, events are emitted
    const receiver = new Receiver(8787, '127.0.0.0', process.stderrr);
    const sender = new Sender(PKG.name, PKG.version, 8787, '127.0.0.0');
    
    sender.log('a string');
    sender.log(new Error('an error'));
    sender.log({ a: 1, b: 'two', e: new Error('hallo') });
    import { format, parse } from '@xutl/loglines';
    import * as PKG from './package.json;
    
    // interface LogInfo {
    //   [name: string]: string | number | boolean | null | Error;
    // }
    
    const line: string = format(PKG.name, PKG.version, 'my log message');
    /*
    2021-02-09T22:35:45.123Z @xutl/logline; version=1.0.0; message=my log message;
    */
    
    const info: { pkg: string, info: LogInfo } = parse(line);
    /*
    {
      timestamp: 1612910145123,
      pkg: '@xutl/logline',
      info: {
        version: '1.0.0',
        message: 'my log message'
      }
    }
    */

    Install

    npm i @xutl/logline

    DownloadsWeekly Downloads

    7

    Version

    1.0.2

    License

    ISC

    Unpacked Size

    32.2 kB

    Total Files

    26

    Last publish

    Collaborators

    • pipobscure
    • xutl-dev