1234567891011121314151617181920212223242526272829 |
- 'use strict';
- const inspect = require('util').inspect;
- const format = require('./format');
- const { LEVEL, MESSAGE, SPLAT } = require('triple-beam');
- /*
- * function prettyPrint (info)
- * Returns a new instance of the prettyPrint Format that "prettyPrint"
- * serializes `info` objects. This was previously exposed as
- * { prettyPrint: true } to transports in `winston < 3.0.0`.
- */
- module.exports = format((info, opts = {}) => {
- //
- // info[{LEVEL, MESSAGE, SPLAT}] are enumerable here. Since they
- // are internal, we remove them before util.inspect so they
- // are not printed.
- //
- const stripped = Object.assign({}, info);
- // Remark (indexzero): update this technique in April 2019
- // when node@6 is EOL
- delete stripped[LEVEL];
- delete stripped[MESSAGE];
- delete stripped[SPLAT];
- info[MESSAGE] = inspect(stripped, false, opts.depth || null, opts.colorize);
- return info;
- });
|