如何在Node.js中设置一个variables为morgan的结果(不logging在控制台上)

我不明白节点中的stream。 我尝试将应用程序的请求和响应信息保存到MongoDB中。

首先,我想为摩根的结果设置一个variables:

var apiInfo = morgan('dev') app.use(console.log('test______',apiInfo)) 

但是,它不起作用。 我知道这在摩根官方网站:

 var express = require('express') var fs = require('fs') var morgan = require('morgan') var path = require('path') var app = express() // create a write stream (in append mode) var accessLogStream = fs.createWriteStream(path.join(__dirname, 'access.log'), {flags: 'a'}) // setup the logger app.use(morgan('combined', {stream: accessLogStream})) app.get('/', function (req, res) { res.send('hello, world!') }) 

但我不想将结果保存到access.log,我只想将结果保存到variablesapiInfo。

使用项目https://www.npmjs.com/package/mongo-morgan 。 使用正则expression式修改index.js中的stream,然后可以很容易地将Morgan的数据放到Mongodb中