问题标签 [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 回答
1403 浏览

node.js - 如何使用 nodejs 和 express 记录应用程序崩溃和系统崩溃?

我对使用 npm 模块 morgan 进行日志记录非常满意,但不确定如何在节点应用程序中记录系统崩溃或系统关闭。可能吗?请指导。

谢谢

0 投票
1 回答
3504 浏览

node.js - 登录生产最佳实践?

可以在生产模式下使用摩根作为记录器,还是直接扔掉它,只在开发模式下使用?
登录生产模式的最佳实践是什么?

0 投票
1 回答
323 浏览

javascript - 使用 export 中的 express 中间件 morgan

我打算morgan在应用程序中用于记录目的express
我可以morganserver.js文件中使用:app.use(morgan('tiny'))它工作正常。但是,我想将所有与日志记录相关的中间件放入调用的文件中logger.js并从中使用,而不会使server.js文件复杂化。
所以logger.js看起来如下:

并在server.jsby中使用import morganLogger from './logger'并尝试过app.use(morganLogger)app.use('\', morganLogger)但它是徒劳的,因为它被证明不是用于集成中间件的正确语法!
无论TypeError('Router.use() requires a middleware function but got a ' + gettype(fn))何时app.use('/', morganLogger)TypeError: app.use() requires a middleware functionapp.use(morganLogger)
有没有办法解决这个问题并将morgan其用作外部文件的express中间件。js

0 投票
1 回答
3557 浏览

javascript - 如何使用 Morgan 在请求和响应之间正确拆分日志记录?

Morgan 的文档描述了可以拆分请求和响应的日志记录:

拆分/双重记录

中间件可以根据morgan需要多次使用,实现如下组合:

  • 根据请求记录条目,在响应中记录条目
  • 将所有请求记录到文件,但将错误记录到控制台

在他们唯一相关的示例中,有一些注释描述了一个中间件将记录错误响应到控制台,另一个请求记录到文件:

这似乎实现了将所有请求记录到文件并将错误记录到控制台的第二个示例,但不是第一个示例。

我有点迷茫,我不明白morgan只记录请求或只记录响应的意思。我是否必须关心将这些中间件正确放置在哪里?

目前,我对请求和响应都有一个日志条目,我猜:

那么,如何在中间件调用中正确记录请求,并在另一个调用中记录响应morgan

0 投票
1 回答
293 浏览

node.js - morgan.format is not a function when I study the logger middleware

Hi I am learning the source code about morgan

when I saw the line morgan.format('combined', ...) for my understand, why it can run success and not cause morgan.format is not a function. when I extract the main code run in my local and I got the error. how this place is implemented?

can anybody tell me ? thanks in advance.

0 投票
1 回答
225 浏览

node.js - 如何在我的 express 项目中配置 mongo morgan?

我正在尝试使用mongo-morgan。我像原来的摩根包一样使用它,但在终端日志中没有得到任何响应。

我已经尝试过了(将“url”更改为我的数据库 url):

app.use(mongoMorgan('url', 'dev'));

这(来自 mongo-morgan 存储库):

0 投票
1 回答
782 浏览

node.js - Express morgan logger - “de-escape” 查询字符串

我在 Express 服务器上使用这样的摩根:

在我的日志中,我通常会看到这样的内容:

我的问题是 - 有没有办法使用摩根记录查询字符串,其中字符没有转义?

看起来像这样:

0 投票
4 回答
10074 浏览

node.js - 你应该如何在 TypeScript 中为 Morgan 创建 Winston 记录器流

在 TypeScript 中创建将记录快速 Morgan 中间件日志记录的 winston 记录器的正确方法是什么?我找到了一些 JavaScript 示例,但在将它们转换为 TypeScript 时遇到了麻烦,因为我收到了一个错误Type '{ write: (message: string, encoding: any) => {}; logger: any; }' is not assignable to type '(options?: any) => ReadableStream'. Object literal may only specify known properties, and 'write' does not exist in type '(options?: any) => ReadableStream'.

这是我的代码:

我已经能够通过调整要使用的代码来解决此问题,const winston = require('winston');但想知道您应该如何维护类型?

0 投票
1 回答
4736 浏览

node.js - 有没有办法使用 Morgan-body 在 express.js 中创建自定义日志格式?

我正在使用morgan-body在我的 node.js/express 应用程序中记录 HTTP 请求和响应。此中间件创建的日志条目包含完整的请求和响应 HTTP 标头,这对于我的需要来说太冗长了。

这是我的摩根身体片段:

由于现有的日志条目太冗长,我需要为它们创建自定义格式,即

“状态”和“消息”字段位于 response.body 中。

我已经用谷歌搜索了这个问题的解决方案,但我被困住了。morgan-body 有没有办法编写自定义消息?如果有可以实现我需要的替代中间件,那将是受欢迎的。

0 投票
2 回答
3247 浏览

typescript - Typescript - Morgan 和 logger.stream 导致 lint 错误

我尝试使用记录器流功能附加Morgan日志。Winston但是,一旦我尝试附加logger.stream使用 morgan 中间件时,它就会失败并显示以下消息:

Argument of type '"combined"' is not assignable to parameter of type 'FormatFn'.

这是我的温斯顿初始化代码:

然后,我尝试使用 Morgan 的代码。

我不确定为什么会出现此错误:/