首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要Morgan & Winston使用btyesize记录api响应

需要Morgan & Winston使用btyesize记录api响应
EN

Stack Overflow用户
提问于 2019-07-02 16:11:44
回答 1查看 166关注 0票数 1

我最近将Winston添加到我的nodejs后端,并将其与morgan相结合来记录每个API调用。但我错过了bytesize属性,它让我只使用morgan就能知道每个响应大小有多大。它可以让我对API获取了太多数据有一个更大的了解。任何帮助都是非常好的:)

仅morgan api示例

GET /v1/users/notifications/5cb5ce7297fc767b4cdf667b?role=user&type=HUBFE&page_size=10&page_num=1 200 - 3252 - 25.553 ms

现在使用winston实现

info: ::ffff:192.168.0.166 - - [02/Jul/2019:08:09:50 +0000] "GET /v1/searches/nearby?page_size=4&page_num=1 HTTP/1.1" 304 - "http://localhost:8100/" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1" {"timestamp":"2019-07-02 04:09:50 pm"}

我在我的app.js文件中组合了摩根和温斯顿,如下所示

代码语言:javascript
复制
app.use(morgan('combined', {
  stream: winston.stream
}));
EN

回答 1

Stack Overflow用户

发布于 2019-07-02 17:18:34

注意:我们可以在日志格式中进行更改。

使用morgan-json并在json函数中使用:rescontent-length bytes,即

代码语言:javascript
复制
const morgan = require('morgan');
const json = require('morgan-json');
const format = json(':method :url :status :res[content-length] bytes :response-time ms');
app.use(morgan(format));

有关更多日志标记,请参阅https://www.npmjs.com/package/morgan#tokens

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56848038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档