介绍
talend-log 是一款基于 Node.js 环境下的日志工具,适用于前端和后端开发,并且可以方便地与 Talend Data Integration 集成。其主要功能包括:
- 轻松地记录日志信息
- 配置日志级别,支持 DEBUG、INFO、WARN 和 ERROR
- 可以根据项目不同的需求灵活控制日志输出
本文将介绍如何使用 talend-log,包括安装、配置、使用方法和实际示例。
安装
安装 talend-log 只需在终端输入以下命令:
npm install talend-log --save
这将在你的项目中安装 talend-log 依赖。
配置
在使用 talend-log 之前,需要先配置日志。我们可以在项目中创建一个 talend-log-config.js
文件来定义我们需要的日志配置参数。
示例代码:
-- -------------------- ---- ------- -------------- - - ------ -------- ---------- - -------- - ----- --------- -- ----- - ----- ------- --------- -------------- - -- ----------- - -------- - ---------- ----------- -------- ------ ------- - - --
level
表示日志的级别,可以设置为 debug、info、warn、error 中的一个,默认为 debug 级别。appenders
表示日志的输出方式,可以设置为 console 或 file,控制台输出或文件输出。文件输出需指定文件名称。categories
表示日志分类,可设置多组,可以按照日志类型、模块等进行划分。
使用
在项目中引入 talend-log:
const logger = require('talend-log').logger('my-category');
其中 'my-category'
表示一个可自定义分类的名称,此处用于日志输出的归类。
使用 logger 记录日志:
- logger.debug(message)
- logger.info(message)
- logger.warn(message)
- logger.error(message)
其中 message 为字符串格式,表示需要记录的日志内容。
示例代码:
const logger = require('talend-log').logger('my-category'); logger.debug('Debug message'); logger.info('Info message'); logger.warn('Warn message'); logger.error('Error message');
实际示例
下面我们以一个 Express.js 项目为例,介绍如何将 talend-log 集成进项目中。
安装
新建一个 Express 项目,然后在项目根目录中打开终端,运行以下命令来安装 talend-log。
npm install talend-log --save
配置日志
在项目根目录中新建一个名为 talend-log-config.js
的文件,并将以下代码复制到文件中。
-- -------------------- ---- ------- ----- ---- - ---------------- -------------- - - ------ -------- ---------- - -------- - ----- --------- -- ------- - ----- ----------- --------- -------------------- -------------------------- -------- -------------- --------- ------ -- ------ - ----- ----------- --------- -------------------- ------------------------ -------- -------------- --------- ------- - -- ----------- - -------- - ---------- ----------- --------- --------- ------ ------- -- ----- - ---------- ----------- ------ ------ -- ------ - ---------- ---------- ------ ------- - - --
以上代码定义了三个 appender,依次是 console、access 和 error 三个输出方式。其中 access 用于记录 http 请求访问日志,error 用于记录错误日志。日志均存储在项目根目录下 logs 文件夹中,按日期每天生成一个文件。
整合 Express.js
在 app.js 文件中,我们需要引入 talend-log 并将之与 Express.js 绑定。
示例代码:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ------------------------------------- ----- --- - ---------- -- - ---------- --- ---------- - ------------- ---- ----- -- - ----- ----- - ----------------- ----- --- - -------- ------- - ------- --------- -- - ------- - ---- -------------- ---------- ----- ---- - ---------------------- ----- -------- - ------- - --- - ------- - ----- ----- ------- - -------------- ----------- ----------------- ---------------------- ---- --------------------- -- ------- --- -- ------
以上代码中,我们重写了 Express.js 的 res.end(command, encoding)
方法,在其中加入 talend-log,记录 http 请求的访问日志。
运行
在终端中输入以下命令即可启动我们的 Express.js 项目。
npm start
在运行过程中,我们可以在终端中看到类似如下的日志输出:
[2019-08-04T08:43:44.618] [INFO] http - GET /users 200 51 ms
同时在项目根目录下 logs/access 文件夹中会生成一个按照时间命名的日志文件,其中记录了请求的地址、状态码及响应时间等信息。
结束语
在实际开发中,记录日志对于排查问题、监控系统等方面都非常重要。talend-log 是一款非常好用的日志工具,可以方便地控制日志输出,并且与 Talend Data Integration 集成会更加便利。希望读者可以通过本文介绍的内容,轻松掌握 talend-log 的使用方法。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600560b381e8991b448def82