gpt4 book ai didi

node.js - 在 Node.js 应用程序中实现日志记录

转载 作者:太空宇宙 更新时间:2023-11-03 22:32:28 29 4
gpt4 key购买 nike

实际上,我使用 Let's Chat我想将 Apache 的日志文件(日期、IP 地址、浏览器等)等连接存储在 logrotated 文件中。我找到了这些项目:

  • Log4js- Node
  • 毛毛虫
  • winston

但他们专注于系统/调试日志和/或我不知道如何在我的情况下实现它们。

欢迎提出任何想法,谢谢

最佳答案

对于 HTTP 请求记录器,有 morgan:https://www.npmjs.com/package/morgan

文档示例:

var express = require('express')
var fs = require('fs')
var morgan = require('morgan')

var app = express()

// create a write stream (in append mode)
var accessLogStream = fs.createWriteStream(__dirname + '/access.log', {flags: 'a'})

// setup the logger
app.use(morgan('combined', {stream: accessLogStream}))

app.get('/', function (req, res) {
res.send('hello, world!')
})

您可以将 morgan 与例如 winston 结合起来:

var logger = new winston.Logger({
...
}),

logger.stream = {
write: function(message, encoding){
logger.info(message);
}
};

app.use(require("morgan")("combined", { "stream": logger.stream }));

关于node.js - 在 Node.js 应用程序中实现日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34628720/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com