1

我使用 Morgan 和 Express 为我的网站提供 REST API。我在 main.js 中以这种方式实现了 morgan-logger:

app.use(morgan('dev')); //logger
app.use(morgan('dev', {stream: fs.createWriteStream('./access.log', {flags: 
'a'})}));

现在它会在我的 access.log 文件中记录对 API 的每次调用,如下所示:

::ffff:10.60.101.165 - - [26/Feb/2019:08:19:57 +0000] "POST /api/api1
HTTP/1.1" 200 -
::ffff:10.60.101.165 - - [26/Feb/2019:08:19:58 +0000] "POST /api/api2
HTTP/1.1" 200 -
::ffff:10.60.101.165 - - [26/Feb/2019:08:19:58 +0000] "POST /api/api3
HTTP/1.1" 200 -

没关系,但是当我编写自己的日志消息(如 console.log(“文件 A 中的错误”))时,它会打印在控制台中,但不会打印在我的 access.log 文件中。如何在我的 API 文件中手动写入它?

4

1 回答 1

0

我们使用 morgan logger 进行 API 日志记录。如果你想记录任何东西,那么你可以使用winston logger library。它很容易使用。我已经在这里回答过了——Log4js javascript create daily log file

您也可以使用 pm2 来托管您的服务。之后,每当您在控制台上记录任何内容时,pm2 都会将它们写入文件中。

于 2019-02-26T09:50:54.440 回答