【问题标题】:Listing express.js requests列出 express.js 请求
【发布时间】:2017-09-21 10:40:11
【问题描述】:

想象一下 express.js 应用程序崩溃的场景。

是否可以在服务器实际崩溃之前记录所有正在运行的请求?

例如。 “当服务器崩溃时,它正在服务 /apples 和 /lemons ...”

【问题讨论】:

  • 导致服务器崩溃的错误是什么?
  • 没什么特别的。如果出现致命错误,我想在服务器崩溃之前记录一些信息,以便获得修复错误的所有信息。 process.on('uncaughtException', function (err) { // 记录错误 // 记录运行请求的位置 process.exit(1); });
  • ...如果您使用新版本的节点,我会选择异步/等待。和“express-promise-router”然后使用express的错误处理。这对我来说导致更少的回调、.thens 和忘记捕获的错误。 (就像快递一样)..也许这是一个解决方案?...
  • 谢谢,但老实说这听起来太贵了:这意味着我的应用程序要进行很多更改。我正在寻找类似 app.listRequest() 的东西
  • 把nginx放在前面,如果日志里有进来的请求却没有响应,你有你想要的:)

标签: node.js express web-applications


【解决方案1】:

您可以使用 morgan 或 winston 之类的记录器(morgan 专注于 express,因此它可能会满足您的需求)

看起来你只需要requrie它然后在express中使用它,然后它会记录每个http请求。

https://github.com/expressjs/morgan

【讨论】:

  • 他们在请求处理后不登录吗?如果是这样,如果服务器崩溃,访问请求不会被记录...
  • github.com/expressjs/morgan#immediate 你可以给他一个带有“立即”属性的选项对象
猜你喜欢
  • 2011-11-05
  • 2013-11-15
  • 1970-01-01
  • 1970-01-01
  • 2013-12-24
  • 1970-01-01
  • 1970-01-01
  • 2020-01-03
  • 2013-05-28
相关资源
最近更新 更多