node.js - 在 sails 中记录响应状态

标签 node.js logging sails.js

我正在尝试记录向我的 sails 应用程序发出的每个请求,但我找不到记录与请求关联的响应的方法。

我在 config/http.js 文件中添加了这个自定义中间件:

myRequestLogger: function (req, res, next) {
  req.on("end", function(){
    sails.log(res.statusCode);
  });
  return next();
}

但它无法正常工作,我可以获得 200 个代码,但未记录 res.forbidden 或 res.notFound 响应。知道我该如何处理吗?

谢谢

最佳答案

您可以在 api/responses 本身中覆盖它。这是简化的覆盖:

// api/responses/forbidden.js
module.exports = function(err, viewOrRedirect) {
  // ... Sails logic
  this.req._sails.log.verbose();
}

但是,如果您期望上面的中间件可以做到这一点,那么您就错了。您的中间件应类似于以下内容:

myRequestLogger: function(req, res, next) {
  req._sails.log.verbose('YOUR LOG');
  return next();
}

关于node.js - 在 sails 中记录响应状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32460084/

相关文章:

node.js - Mongoose 不允许我为 Number 插入空值?

node.js - Sails.js 和 Mocha、res.view 测试

sails.js - 迁移 Sequelize 迁移

node.js - 运行 setTimeout 并在终端中显示登录信息

json - 松弛 RTM 消息

python - 完全禁用 python 日志记录

ios - 无法打开持久连接的日志,即在 iPhone 上推送日志

java - 如何使用 Spring AOP 和 SPring boot 进行日志记录

javascript - Grunt 可以单独缩小多个文件,而不将它们连接起来吗?

node.js - npm install 上的 WAR 和 ERR