Pri*_*nah 2 node.js express morgan
我正在使用morgan-body在我的node.js / express应用程序中记录HTTP请求和响应。该中间件创建的日志条目由完整的请求和响应HTTP标头组成,对于我的需求来说太冗长了。
这是我的摩根身体片段:
const express = require('express');
const app = express();
const parser = require('body-parser');
const morganBody = require('morgan-body');
// snipped configuration for other middleware
app.use(parser.json());
app.use(parser.urlencoded({ extended: false }));
morganBody(app, {
  noColors: true,
  maxBodyLength: 65535,
  stream: this.responseStream
});
由于现有的日志条目过于冗长,因此我需要为其创建自定义格式,即
timestamp: fruit-name: info: status: Pass message: no damage
字段“状态”和“消息”在response.body中。
我已经用谷歌搜索了一个解决方案,但是我被困住了。摩根大通有没有办法撰写自定义消息?如果有可以实现我所需要的替代中间件,将受到欢迎。
代替使用morgan-body,可以使用morgan库轻松实现。
您可以通过创建自定义标记来实现。
这是一个可能的解决方案:
const express = require('express');
const app = express();
const morgan = require('morgan');
morgan.token('status', function (req, res) { return res.body.status })
morgan.token('message', function (req, res) { return res.body.message })
morgan.token('fruit-name', function (req, res) { return res.body.fruit-name })
morgan.token('timestamp', function (req, res) { return res.body.timestamp })
app.use(morgan('Timestamp\: :timestamp fruit-name\: :fruit-name Status\: :status Message\: :message'))
这应该为您创建一个自定义字符串!
| 归档时间: | 
 | 
| 查看次数: | 1816 次 | 
| 最近记录: |