gpt4 book ai didi

node.js - Nodejs - 如何使用 morgan 进行调试

转载 作者:搜寻专家 更新时间:2023-10-31 23:37:17 25 4
gpt4 key购买 nike

Morgan将请求直接输出到控制台。

如何将它们重定向到 npm debug以便它遵循与正在记录的其他内容相同的格式?

我的 debug.js 配置如下所示:

import debug from 'debug';

const LOG_PREFIX = 'api';

const info = debug(`${LOG_PREFIX}:info`);
const dev = debug(`${LOG_PREFIX}:dev`);
const error = debug(`${LOG_PREFIX}:error`);

export {
info,
dev,
error,
};

我目前记录其他内容,例如:

import { info } from './debug';

info('App is up and running!');

我目前的 morgan 电话是:

app.use(morgan('combined'));

最佳答案

Morgan 接受一个可选参数,即 stream .

默认情况下,它指向控制台 process.stdout

由于调用 stream.write,您可以轻松构建一个快速流,重定向到您的 debug

app.use(morgan('combined', { stream: { write: msg => info(msg) } }));

一般来说(但仍然是 ES6),这将是:

import debug from 'debug';
const info = debug('info');
app.use(morgan('combined', { stream: { write: msg => info(msg) } }));

ES5:

var info = require('debug')('info');
app.use(morgan('combined', { stream: { write: function(msg) { info(msg); } }}));

关于node.js - Nodejs - 如何使用 morgan 进行调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42009672/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com