简介
对于 web 应用来说,灵活的日志记录是一个必不可少的特性。Hapi 是一个优秀的 Node.js web 应用框架,同时 Pino 是一个高性能的 JSON 格式日志库。结合 Hapi 和 Pino 可以轻易地实现高效可靠的日志记录。
本文将会介绍如何在 Hapi 应用中使用 Pino 进行日志记录。
安装
首先需要安装 Hapi 和 Pino。可以使用 npm 安装:
npm install @hapi/hapi pino
集成
在 Hapi 应用中使用 Pino 进行日志记录很简单。只需要在 Hapi 实例化时传入 Pino 的实例即可。
-- -------------------- ---- ------- ----- ---- - --------------------- ----- ---- - --------------- ----- ------ - ------ ------------ ---- -- ----- ---- - ----- -- -- - ----- ------ - ------------- ----- ----- ----- ------------ ------ - -------- --------- -- -- - ------ ---- ------- - ------- ------ --- ----- --------------- ------------------- ------- -- ---- ----------------- -- -------------------------------- ----- -- - ----------------- ---------------- --- -------
这样,在应用的任何地方,都可以通过 server.logger
方法使用 Pino 实例进行日志记录。
const handler = (request, h) => { request.server.logger.info('Hello, world!'); return 'Success'; };
配置
Pino 有许多配置选项,可以自定义日志格式和记录级别,以适应应用的需求。在初始化 Pino 实例时传入配置选项即可。
const logger = pino({ level: 'info', prettyPrint: true, redact: { paths: ['password', '*.password', 'access_token'], censor: 'REDACTED' } })
上面的代码定义了日志记录的级别为 info
,启用了可读性更好的输出格式,以及对敏感信息(如密码、access_token)进行了处理,输出 REDACTED
。
更多配置选项请参考 Pino 的文档。
总结
在 Hapi 应用中使用 Pino 进行日志记录非常简单,只需要实例化 Pino 并将其作为 Hapi 的 logger 实例。同时,Pino 的配置选项也非常丰富,可以灵活地适应应用的需求。
日志记录虽然看似简单,但实质上非常重要。好的日志记录可以让你在应用出现问题时,快速定位问题,予以解决。因此,我们应该充分发挥 Pino 的优势,充分利用日志记录,提高应用的健壮性和稳定性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65bacdc0add4f0e0ff35ba94