1. 简介
express-logging 是一个基于 Express 的中间件,用于记录 HTTP 请求和响应,包括请求方法、路径、参数、请求头、响应状态码、响应头等信息。它可以将记录写入到控制台、文件、数据库等不同的输出介质中。
使用 express-logging 可以很方便地记录和跟踪应用程序的请求和响应,帮助开发者快速定位问题并优化性能。
2. 安装
在项目根目录下,执行以下命令安装 express-logging:
--- ------- --------------- ------
3. 使用方法
3.1 基本使用
使用 express-logging 的最简单方式是将其作为 Express 的中间件使用,只需在 Express 的应用程序中添加如下代码:
----- ------- - ------------------- ----- - ------ - - --------------------------- ----- --- - ---------- ----------------
这样,express-logging 就会自动记录每个请求和响应,输出到控制台的效果如下所示:
------------------------ - ----- ---- ---------- - --- ----- ---------------------------------------
3.2 配置日志等级
express-logging 支持 5 个日志等级:trace、debug、info、warn 和 error。你可以通过设置 LEVEL
环境变量或 logger.setLevel()
方法来控制日志等级。
----- ------- - ------------------- ----- - ------ - - --------------------------- ----- --- - ---------- ------------------------ -- --- ---- -------- ----------------
3.3 自定义日志格式
默认情况下,express-logging 会输出 JSON 格式的日志信息,你可以通过 logger.setFormat()
方法自定义日志格式。
----- ------- - ------------------- ----- - ------ - - --------------------------- ----- --- - ---------- ------------------------- ---- ------- -------------------- - -------------- ----- ----------------
上面代码中的 :method
、:url
、:status
、:res[content-length]
和 :response-time
是日志格式中的占位符,分别表示请求方法、URL、响应状态码、响应体长度和响应时间。你可以根据需要自定义占位符并按照自己的需求组合格式。
3.4 写入到文件
除了将日志输出到控制台之外,你还可以将其写入到文件中。express-logging 支持多种文件输出格式,包括 JSON、CSV、文本等。
----- ------- - ------------------- ----- - ------- ------------- - - --------------------------- ----- --- - ---------- ------------------------------ ------- ---- ------- -------------------- - -------------- ----- ----- ------------- - --- --------------- ----- -------------------- ------- ------ -- --- --- -- --- --------------- ---------------
这样,express-logging 就会将日志写入到 ./logs/access.log
文件中,文件格式为 CSV。
3.5 写入到 MongoDB
如果你愿意,你也可以将日志写入到 MongoDB 数据库中。以下是基本用法:
----- ------- - ------------------- ----- - ------- ---------------- - - --------------------------- ----- -------- - -------------------- -- -- ------- --- ---------------------------------------------- ----- --- - ---------- ------------------------------ ------- ---- ------- -------------------- - -------------- ----- ----- -------------- - --- ------------------ ----------- ------------- --- --------------- ----------------
这样,express-logging 就会将日志写入到 MongoDB 数据库中。
4. 总结
本文介绍了如何使用 npm 包 express-logging 记录 HTTP 请求和响应,包括使用不同的输出介质、设置日志等级、自定义日志格式等。希望本文可以帮助读者更好地了解和使用 express-logging,提高应用程序的可维护性和可靠性。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedc34db5cbfe1ea0612125