介绍
@parade/pino-http 是一个基于 pino 的 HTTP 请求日志库,提供了一个简单易用的包装器来帮助你捕捉 HTTP 请求的每个细节并记录日志。该库支持 Node.js、Express、Koa 和 Hapi 等框架,并支持多种配置选项,满足各种需求。
安装
使用 npm 来安装 @parade/pino-http:
npm install @parade/pino-http --save
使用
使用 @parade/pino-http 非常简单,只需在应用程序的入口处引入库,创建实例并安装它即可。
Node.js
-- -------------------- ---- ------- -- --- ----- - ------------ - - ---------------- ----- - ------ - - ------------------------------ ------- -------------- ------ ------- ------------ ----- --- --- -- ------ ----- ---- - ---------------- ----------------------- ---- -- - ---------------------- - ---- ------- --- -------------- --------- ----------------
Express
-- -------------------- ---- ------- -- --- ----- ------- - ------------------- ----- - ------------ - - ---------------- ----- - ------ - - ------------------------------ ------- -------------- ------ ------- ------------ ----- --- --- -- ------ ----- --- - ---------- -- --- ---------------- -- -- ------------ ----- ---- -- - --------------- --------- --- -- ---- ---------------- -- -- - ------------------------ ------- -- ---- -------- ---
Koa
-- -------------------- ---- ------- -- --- ----- --- - --------------- ----- - ------------ - - ---------------- ----- - ------ - - ------------------------------ ------- -------------- ------ ------- ------------ ----- --- --- -- ------ ----- --- - --- ------ -- --- ---------------- -- -- ------------- --- -- - -------- - ------ -------- --- -- ---- ---------------- -- -- - ------------------------ ------- -- ---- -------- ---
Hapi
-- -------------------- ---- ------- -- --- ----- ---- - ---------------------- ----- - ------------ - - ---------------- ----- - ------ - - ------------------------------ ------- -------------- ------ ------- ------------ ----- --- --- -- ------ ----- ------ - ------------- ----- ----- --- -- --- ----------------------- --------- -- -- - ---------------------- - ---- ------------ --- ------ ----------- --- -- -- -------------- ------- ------ ----- ---- -------- --------- -- -- - ------ ------ -------- -- --- -- ---- ----- -------- ------- - ----- --------------- ------------------------ ------- -- ---- -------- - --------
配置选项
@parade/pino-http 提供了各种配置选项,可以满足不同场景的需求。以下是可用的所有选项。
logger
(可选):传递一个 pino 实例用于记录日志。默认情况下,@parade/pino-http 会创建一个实例。customProps
(可选):向所有日志添加自定义属性。reqCustomProps
(可选):将自定义属性添加到 HTTP 请求日志中。resCustomProps
(可选):将自定义属性添加到 HTTP 响应日志中。serializers
(可选):定义序列化器以指定如何序列化对象。autoLogging
(可选):设置为 false 以禁用自动请求日志记录。stream
(可选):将日志记录到指定流中。
示例
以下是示例代码,演示如何使用自定义属性和序列化器,以及如何将日志记录到文件中。
-- -------------------- ---- ------- ----- - ------------ - - ---------------- ----- - ------ - - ------------------------------ ------- -------------- ------ ------- ------------ ----- --- ------------ - ---- --- ------------- -- --------------- --- -- -- ------- ----------- ---- -------- --- --------------- ----- ---- -- -- ----------- --------------- ------ ---- --- ------------ - ---- --- -- -- ------- ----------- ---- -------- -------- ------------ ----- --------- --- ---- --- -- -- ----------- --------------- -------- ----------------- ----- --------- --- -- ------- --------------- --- ----- ------- - ------------------- ----- --- - ---------- ---------------- ------------ ----- ---- -- - ---------------------- - ----- ---------- --- ---------- -------- ------ ------- --- --- ---------------- -- -- - ------------------------ ------- -- ---- -------- ---
结论
@parade/pino-http 是一个功能强大、易于使用的日志库,帮助你记录 HTTP 请求的每个细节。使用它可以更轻松地维护应用程序,并更轻松地排查潜在的问题。希望这篇文章可以对你有所帮助,让你更好地了解和使用 @parade/pino-http。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedb092b5cbfe1ea06110df