npm 包 pino-rest 使用教程

pino-rest 是一个基于 pino 开发的 Node.js 日志库,可以帮助开发者在 RESTful API 服务器端应用中方便地打印和分析日志。本文将介绍 pino-rest 的使用方法和具体实例。

安装

pino-rest 是一个 Node.js 模块,可以通过 npm 包管理器进行安装:

--- - ---------

基本使用

pino-rest 需要与 express 或其他类似的 web 框架一起使用。安装 express 后,可以通过以下方式启用 pino-rest:

----- ------- - ------------------
----- --- - ---------

----- ---- - ---------------
----- ----------- - ------------------------------

----- ------ - ------ ------ --------------------- -- ------ --
--------------------- ------ ---

在应用中使用 logger 对象记录日志:

------------ ----- ---- -- -
  -------------------- ----- ------
  --------------- --------
--

这将记录应用启动和请求的信息。

配置

pino-rest 内置支持多种配置。在 express-pino-logger 中传递配置:

----- ------- - ------------------
----- --- - ---------

----- ---- - ---------------
----- ----------- - ------------------------------

----- ------ - ------ ------ --------------------- -- ------- ------------ ---- --
--------------------- ------ ---

这里实现了一个控制台美化输出。

结合 express-bunyan-logger

express-bunyan-logger 是另一个流行的 Node.js 日志库,本例中我们如何将 pino-rest 与 express-bunyan-logger 一起使用。

在主文件中配置 bunyan:

----- ------ - -----------------
----- ------ - --------------------- ----- ------------- --
----- ------------ - ------------------------
----- -------------- - ----------------------------------
----- ---------------- - ------------------------------------

然后,安装 express-bunyan-logger 以及 pinopino-pretty

--- - --------------------- ---- -----------

在主文件中配置 express-bunyan-logger:

----- ------------- - -
  ----- --------------
  ------------ ----------------------
  -------- --
    ------ --------
    ------- ------------------------------------
  --
-

--------------------------------------------

然后再添加 pino-rest,logger 实例传递给 expressPino:

----- ----------- - ------------------------------

--------------------- ------ ---

然后启动应用即可。

控制台参数

pino-rest 支持单独设置控制台日志输出,使用 express-pino-loggerprettyPrint 来显示控制台日志。

----- ------- - ------------------
----- --- - ---------

----- ---- - ---------------
----- ----------- - ------------------------------

----- ------ - ------ ------------ ---- --
--------------------- ------ ---

过滤器

pino-rest 支持使用过滤器对日志进行过滤。过滤器允许您在记录日志时添加额外信息。

使用如下方式在中间件中创建一个新的子日志记录器:

----- ----------- - --------------
  ---------- ---------
--

你可以在你的请求处理程序中使用这个子日志记录器来添加基于请求的记录,例如:

------------------------- ----- ------

您还可以使用 Express 过滤器来控制什么类型的请求将记录到日志中。

----- ------------ - -------------------------------------

----- ----------- - ------------------ -- -
  -- ----------------------------------------- -
    ------ ------ -- ------ ---- --- --------- --- -----
  -
  ------ ----- -- --- ---------- ----
--

--------------------- ------ ------- ------- ------------ ------ ---

这将忽略 /api/logs 请求,并记录所有其他请求。

总结

pino-rest 可以方便地在 Node.js RESTful 应用程序中记录和分析日志,不需要编写复杂的代码,只需简单地设置即可。希望本文可以帮助您了解使用 pino-rest 进行日志记录的基本知识。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005601381e8991b448de181


猜你喜欢

  • npm 包 eslint-config-lojaskd-base 使用教程

    1. 简介 在前端开发中,我们经常需要使用 linter 工具来确保我们写出规范、可维护、可读性更强的代码。ESLint 是一个非常好的 JavaScript 语法检测工具,它不仅可以检查语法错误,还...

    3 年前
  • npm 包 pathigniter 使用教程

    什么是 pathigniter pathigniter 是一个基于 Node.js 的工具库,它能够自动生成文件路径,帮助前端开发人员更加高效地管理项目中的文件路径。

    3 年前
  • npm 包 saprun-dynamic-input 使用教程

    简介 saprun-dynamic-input 是一个轻量级的前端 npm 包,它提供了一种简便的方式来动态创建输入表单。通过使用该包,你可以轻松地生成一个包含多个表单元素的表单,使得用户能够方便地输...

    3 年前
  • Nuggit - 让前端项目变得更加简单

    介绍 Nuggit 是一款基于 Node.js 的工具,它可以在前端项目开发中提供大量的便捷功能,包括代码管理、打包、部署等等。在本文中,我们将介绍如何使用 Nuggit 来使前端项目开发更加简单。

    3 年前
  • npm 包 seashells 使用教程

    简介 seashells 是一个非常方便的 npm 包,可以将终端命令的输出转化成 HTML 格式并在浏览器中展示。这种技术被称为 “终端录屏”,有时候用来在技术文章中展示终端命令的执行结果。

    3 年前
  • npm 包 assemble-helpers 使用教程

    前言 在前端开发中,我们经常使用一些工具帮助我们更高效地编写代码。其中,npm 是前端开发常用的包管理工具之一。npm 可以让我们轻松地安装、更新、卸载包以及管理包的依赖关系。

    3 年前
  • npm 包 create-graphql-server-find-by-ids 使用教程

    在前端开发中,使用 GraphQL API 构建后端服务已经成为一种主流的趋势,而 create-graphql-server-find-by-ids 正是这样一款能够帮助我们更快速、高效地构建 Gr...

    3 年前
  • npm包db-plumbing-rest-server使用教程

    介绍 db-plumbing-rest-server是一个基于Node.js的npm包,它可以快速创建一个RESTful API服务器,用于访问关系型数据库。它支持MySQL、PostgreSQL等数...

    3 年前
  • npm 包 cat-cli 使用教程

    随着 JavaScript 生态系统的发展,现在前端开发已经离不开 Node.js 环境和 npm 包管理器。在日常的开发中,我们可能会经常需要在命令行中查看一些文件的内容,比如代码文件、日志文件等等...

    3 年前
  • npm 包 solutions-hamburg-moduley 使用教程

    在现代前端开发中,利用 npm 包管理工具已经成为了必不可少的一部分。solutions-hamburg-moduley 是一款非常实用的 npm 包,该包提供了一种动态加载模块的方式,可以大大提升前...

    3 年前
  • npm 包 solutions-hamburg-utils 使用教程

    在前端开发中,我们经常需要使用一些工具函数来方便我们的开发。其中,npm 包 solutions-hamburg-utils 可以帮助我们轻松解决一些常见的问题,让我们的开发效率更高。

    3 年前
  • npm 包 angularjs-responsive-navbar 使用教程

    在现代 Web 开发中,响应式设计已成为一个必备的技能和要求。而在基于 AngularJS 的前端开发中,一个响应式导航栏也是必不可少的。angularjs-responsive-navbar 这个 ...

    3 年前
  • npm 包 hubot-hubot-felicity-nagios-record-analyser 使用教程

    前言 hubot-hubot-felicity-nagios-record-analyser 是一个基于 hubot 的 npm 包。它可以帮助开发人员快速分析 nagios 记录,提高开发效率。

    3 年前
  • npm 包 vulp-cache 使用教程

    在前端开发中,我们经常需要处理数据缓存的问题。为了让开发者更方便地实现数据缓存,npm 上有很多优秀的数据缓存库,其中 vulp-cache 就是一款轻量级、易于使用且功能丰富的缓存库。

    3 年前
  • npm 包 nuke-biz-callapp 使用教程

    简介 nuke-biz-callapp 是一个基于 React Native 的 npm 包,用于在移动端调起原生应用。它提供了接口,可以方便地在 React Native 项目中实现调起原生应用的功...

    3 年前
  • npm 包 jwtch 使用教程

    简介 在前端开发中,用户认证和授权是必不可少的一环。JSON Web Token(JWT)是一种基于 JSON 的身份验证和授权标准,它可以用于在客户端、服务端和各种 API 之间传递信息。

    3 年前
  • npm 包之 newman-reporter-junit_extended 使用教程

    前言 在前端开发中,测试是极其重要的一步。而针对测试结果的统计分析,可以通过 newman-reporter-junit_extended 这个 npm 包来实现,在本篇文章中,我们将详细介绍该 np...

    3 年前
  • npm包wcs-nodejs-sdk使用教程

    前言 在开发前端应用时,经常会涉及到上传/下载文件的需求。万维链云存储是一个国内领先的云存储服务提供商,提供了丰富的接口和SDK,使得我们在前端开发中可以很方便地集成其服务。

    3 年前
  • npm 包 vue-element-multiple-tabs 使用教程

    介绍 vue-element-multiple-tabs 是一个 Vue.js 的多标签页管理组件,让开发者可以方便地在页面上管理多个标签页,并实现快速切换等功能。

    3 年前
  • npm 包 @estokari/platzom 使用教程

    在前端开发中,经常需要处理字符串,比如格式化、截取、替换等操作。这个时候,如果你能够使用一些现成的工具库或者插件,那么就能够大大节省开发时间和减少可能出现的错误。今天我们要介绍的就是一个 npm 包 ...

    3 年前

相关推荐

    暂无文章