问题标签 [morgan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
329 浏览

node.js - 节点和快速路由 - 404 错误

我使用 nodemon 返回 404 错误,但不太确定问题出在哪里。任何提示/资源表示赞赏!

项目根

节点监视器:"GET /v1/protected/ HTTP/1.1" 404 26 "-" "curl/7.49.1"

index.js

服务/路由器.js

0 投票
2 回答
5181 浏览

node.js - Nodejs - 如何使用 morgan 进行调试

Morgan将请求直接输出到控制台。

如何将它们重定向到 npm debug以便它遵循与正在记录的其他内容相同的格式?

我的debug.js配置如下所示:

我目前记录其他内容,例如:

我目前的摩根电话是:

0 投票
1 回答
244 浏览

javascript - 如何在 Node.js 中将变量设置为 morgan 的结果(不在控制台上记录)

我不太了解节点中的流。我尝试将我的应用程序的请求和响应信息保存到 mongodb。

首先,我想为 morgan 的结果设置一个变量:

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

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

0 投票
0 回答
943 浏览

node.js - 摩根和温斯顿一起使用什么级别?

我目前正在学习在 nodejs 的上下文中进行日志记录。目前我的设置使用 morgan 作为快速中间件,winston 作为我的日志记录。我的问题是摩根使用什么级别的日志记录?到目前为止,这是我的 appjs。我正在尝试决定如何拆分我的日志记录。

这是我导入的记录器文件

编辑:为澄清起见,我不希望将我的 http 请求日志记录到我的数据库日志中。有没有办法做到这一点?

0 投票
1 回答
864 浏览

node.js - Express morgan 日志记录无法跳过记录保活请求

我在 Elastic Load Balancer 后面的 AWS 中运行 node.js express 应用程序。我使用“摩根”作为我的日志记录机制。

ELB 会定期发送一个 keep-alive 请求,我将其目标定义为一个 1 char 文本文件 (keep-alive.txt)。

显然,我不想在日志中看到这些请求,所以我使用了 morgan skip 功能如下:

根据morgan doc,将 TRUE 返回到跳过函数应该会导致日志跳过。但是,morgan 正在记录每次保持活动的获取。我究竟做错了什么?

0 投票
0 回答
33 浏览

node.js - 摩根将日志的交替行打印为空白

我正在尝试将 Morgan 与 winston 传输和 winston-daily-rotate-file 包集成。我这样做的原因是winston被用于其他一些记录器,我也在尝试使用它。

我正在 ExpressJS 中为 morgan 创建一个流,如下所示:

对于正在使用的流,我从 winston 创建了一个像这样的记录器,它每天都会创建一个日志:

这个问题是有效的。但是日志带有备用行作为空白。这里的逻辑有什么问题,我该如何纠正它。以下是日志的来源:

0 投票
1 回答
248 浏览

javascript - Sails.js:将控制器名称和功能添加到日志条目

我在sails.js v0.12.3 中自定义morgan 日志记录,并且我能够通过基于req 对象上的属性引入新的morgan 令牌来丰富日志条目——很好。

具体来说,我们要记录控制器及其调用的函数。

目标日志条目将是:

UserController - find - GET /api/v1/users 200 125.952 ms - -

目前我们有一个单独的日志语句,它直接由 Controller 函数编写。但是在一些负载下,它们不会紧挨着出现。因此,我们希望将这些信息放在一个日志条目中。

我最初的尝试:

当我记录 req.options.controller 时,它总是输出“会话”。我想这是因为我在 http.js 中的中间件顺序。

order: [ 'startRequestTimer', 'cachePreflights', 'morgan', 'bodyParser', 'handleBodyParserError', 'compress', 'methodOverride', 'router', 'www', 'favicon', '404', '500' ],

但是放在morgan后面router会导致根本没有摩根的输出。

你有什么想法可以让这成为可能吗?

0 投票
1 回答
975 浏览

node.js - 快递未发送或未到达路线

我有一个相当大的文件库,所以很难显示所有内容。

我有一个带有一些路由的快速服务器,一个是 POST /set 路由。几乎每次我尝试向服务器发布一些东西时,我都没有得到任何响应,事实上,我在 /set 中做的第一件事就是记录一个简单的 hello,它似乎甚至没有到达路由。我正在使用 Morgan 记录器来记录请求,这就是它显示的内容: 注意前几个请求通过

前几个请求通过但不是特定的路线。以及其他路线之后工作。这在这条路线上经常发生,但偶尔会在其他路线上发生,每当发生这种情况时,我都会收到“ERRCONRESET”错误。发生这种情况时,如果我在第一次失败后的几秒钟内立即发送请求,它将通过。

任何建议将不胜感激。

在此处输入图像描述

缺少代码是因为它没有到达路由,它可能由于中间件或快递而断开连接,但没有记录错误。对于中间件,我使用“bodyParser”、“session”、“cookieParser”、“helmet”、“morgan”、“gzip”和“passport”。此路由也没有应用身份验证中间件。

0 投票
0 回答
1077 浏览

node.js - 如果我的 express 应用程序在 heroku 上运行,我是否需要在生产中使用 morgan logger?

我正在使用 papertrail 查看我的日志。用作快速中间件会morgan减慢速度吗?它有什么用途吗?

谢谢

0 投票
2 回答
2083 浏览

express - 摩根跳过不工作

morgan 1.9.0使用和构建一个快速应用程序browser-refresh 1.7.2

摩根似乎忽略了这个skip选项。我的应用程序初始化为

但在我的日志中,我仍然收到数百次点击browser-refresh