123456789101112131415161718192021222324252627282930313233 |
- /* eslint no-undefined: 0 */
- 'use strict';
- const format = require('./format');
- const { MESSAGE } = require('triple-beam');
- const jsonStringify = require('fast-safe-stringify');
- /*
- * function simple (info)
- * Returns a new instance of the simple format TransformStream
- * which writes a simple representation of logs.
- *
- * const { level, message, splat, ...rest } = info;
- *
- * ${level}: ${message} if rest is empty
- * ${level}: ${message} ${JSON.stringify(rest)} otherwise
- */
- module.exports = format(info => {
- const stringifiedRest = jsonStringify(Object.assign({}, info, {
- level: undefined,
- message: undefined,
- splat: undefined
- }));
- const padding = info.padding && info.padding[info.level] || '';
- if (stringifiedRest !== '{}') {
- info[MESSAGE] = `${info.level}:${padding} ${info.message} ${stringifiedRest}`;
- } else {
- info[MESSAGE] = `${info.level}:${padding} ${info.message}`;
- }
- return info;
- });
|