3.1.0 • Published 2 years ago

@mechanicalhuman/bunyan-pretty v3.1.0

Weekly downloads
584
License
MIT
Repository
github
Last release
2 years ago

@mechanicalhuman/bunyan-pretty

hero image

Prettifies NDJSON (Newline Delimited JSON) logs, like `bunyan -o short` but actually pretty.


Table of contents

Install

npm install @mechanicalhuman/bunyan-pretty

Usage

The tool reads from the STDIN and is installed as the cmd pretty in the shell.

  • You can pipe it to the output of a running application:

    node index.js | pretty [OPTIONS]
  • Or just feed it an already existing file.

    pretty [OPTIONS] < input.log

Options

pretty --help
___

Usage: ... | pretty [options]

Time Staps
--time-stamps                   Print TimeStamps.                   [boolean][default: true]
--stamps-format, -f             TimeStamps format.                  [YYYY-MM-DD-HH:mm:ss]
--stamps-time-zone, --tz        TimeStamps zone offset.             [default: "Etc/UTC"]
--print-host                    Prepends the host to the log line.  [boolean][default: false]

Filter
--strict                        Only show "legal" log lines.        [boolean][default: false]
--level, -l                     Only show messages >= level.        [string][default: "trace"]

Inspect
--depth                         (passed to util.inspect)            [number][default: 4]
--max-array-length              (passed to util.inspect)            [number][default: 100]

Other
--force-color                   Force color output                  [boolean][default: false]

Notes

  • Theboolean options can be set false using --no-option. Example: --no-time-stamps
  • The--level choices are: "trace", "debug", "info", "error", "warn", "fatal"
  • The--stamps-format value is passed directly to moment.format()
  • You force the colored output using the env variable: FORCE_COLOR=1
  • You can pass the time stamps zone offset via the env variable: PRETTY_TZ
  • You can pass the time stamps format via the env variable: PRETTY_STAMPS_FORMAT

Programatic Interface

You can use pretty as a writable stream from inside your NodeJS scripts. Probably usefull on development.

/**
 * WIll wrap the given stream with pretty.
 *
 * @param  {WritableStream} stream          Writable stream to wrap pretty around
 * @param  {Object} [opts]                  Options object, will merge with the default options.
 *
 * @return {WritableStream}
 */

const pretty = require('@mechanicalhuman/bunyan-pretty')

Default Options

The options object passed to pretty will merge with the default options.

const defaultOptions = {
  level: 0, // Named level or bunyan/pino level value
  strict: false,

  forceColor: false,
  termColors: false, // trust the term colors, not the stream ones
  colorLevel: 2, // based on your terminal (uses supports-color)

  depth: 4,
  maxArrayLength: 100,

  printHost: false,
  timeStamps: true,
  stampsFormat: 'YYYY-MM-DD-HH:mm:ss',
  stampsTimeZone: moment.tz.guess(), // Based on your Locale
}

Example

const pretty = require('@mechanicalhuman/bunyan-pretty')
const bunyan = require('bunyan')

const log = bunyan.createLogger({
  name: 'myapp',
  stream: pretty(process.stdout, { timeStamps: false }),
  level: 'info',
})

log.info('hello world')

Maintainers

Changelog

Find the CHANGELOG here, generated using Conventional Commits.

License

MIT © Jorge Proaño

3.1.0

2 years ago

3.0.4

2 years ago

3.0.6

2 years ago

3.0.5

2 years ago

3.0.3

2 years ago

3.0.2

2 years ago

3.0.1

3 years ago

3.0.0

3 years ago

2.3.0

5 years ago

2.2.0

5 years ago

2.1.2

5 years ago

2.1.1

5 years ago

2.0.8

6 years ago

2.0.7

6 years ago

2.0.6

6 years ago

2.0.5

6 years ago

2.0.4

6 years ago

2.0.3

6 years ago

2.0.2

6 years ago

2.0.1

6 years ago

2.0.0

6 years ago

1.2.0

6 years ago

1.1.7

6 years ago

1.1.6

6 years ago

1.1.5

6 years ago

1.1.4

6 years ago

1.1.3

6 years ago

1.1.2

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago

0.6.1

6 years ago

0.6.0

6 years ago

0.5.0

6 years ago

0.4.0

6 years ago

0.3.4

6 years ago

0.3.3

6 years ago

0.3.2

6 years ago

0.3.1

6 years ago

0.3.0

6 years ago

0.2.1

6 years ago

0.2.0

6 years ago

0.1.17

6 years ago

0.1.16

6 years ago

0.1.15

6 years ago

0.1.14

6 years ago

0.1.13

6 years ago

0.1.12

6 years ago

0.1.11

7 years ago

0.1.10

7 years ago

0.1.9

7 years ago

0.1.8

7 years ago

0.1.7

7 years ago

0.1.6

7 years ago

0.1.5

7 years ago

0.1.4

7 years ago

0.1.3

7 years ago

0.1.2

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago

0.0.15

7 years ago

0.0.14

7 years ago

0.0.13

7 years ago

0.0.12

7 years ago

0.0.11

7 years ago

0.0.10

7 years ago

0.0.9

7 years ago

0.0.8

7 years ago

0.0.7

7 years ago

0.0.6

7 years ago

0.0.5

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago