节点。js在本地生成日志文件的方法

  

平常都使用<代码>控制台>   

<强> 1,前言

  

期望:   

      <李>每次运行脚本时,生成日志日志存储到本地李   <李>每次执行脚本,之前日志内容清空   
  

需要了解的知识点:

        fs   新的控制台。控制台
     

<强> 2,什么是fs

  

使用节点。js对日志进行存储,就一定会对本地文件的增删改查,那么我们需要用到fs。

  

如果你写过节点,想必你应该见过它<代码> fs> 通过节点来操作系统中的文件

  

fs不需要npm安装、节点中自带,直接引用即可:

        const fs=要求(fs);      

  

本文将会使用fs的<代码> fs。createWriteStream(路径,选项)方法,用于创建可读流,用法如下:

     /* *   * @param1路径   * @param2选项   */让fs=要求(fs);   让ws=fs.createWriteStream (“。/1. txt”, {   国旗:‘w’//文件的打开模式   模式:0 o666//文件的权限设置   编码:“utf8 '//写入文件的字符的编码   highWaterMark: 3//最高水位线   开始:0//写入文件的起始索引位置   autoClose:真正的//是否自动关闭文档   })      

以此用于在日志记录后于本地生成日志文件。

  

3,新控制台。控制台(stdout (stderr] [, ignoreErrors])

  

在节点。js中控制模块提供了基础的调试功能。使用很简单,常用的API的主要有console.log (), console.error ()。

  

此外,可以基于控制台类,方便的扩展出自己的控制台实例,比如把调试信息打印到文件里,而部署输出在控制台上。

        const fs=要求(fs);   常量文件=fs.createWriteStream ('/outPut.txt。');   让新控制台记录器=?刂铺?文件、文件);//调用   logger.log(“你好”);      

此时,调用<代码>记录器。日志>   

<强> 4节点。js生成日志文件方法

  

在了解完节点的两个模块<代码> fs 和<代码>控制台后,我们开始写这个简单而实用的方法,先创建index.js

     //index.js   const fs=要求(fs);      我们选择={   国旗:' a ',//编码:use utf8,//utf8编码   }   让stderr=fs.createWriteStream (’。/H罩尽?选项);//创建记录器   让记录器=new console.Console (stderr);//真实项目中调用下面即可记录错误日志   logger.log(“这是一条日志1 ');   logger.log(“这是一条日志2》);   logger.log(“这是一条日志3 ');      

打开终端执行<代码>节点logger.js :

  

<代码>节点美元index.js

  

此时根目录将会生成。日志文件

  

好了,最简易版的就这样完成了。但是当时在此执行<代码>节点logger.js>   

那就来改写一下指数。js、节点。js中改写依旧使用<代码> fs> fs.writeFile :

     //清空a.log内容   fs.writeFile (',/H罩尽薄ⅰ昂?err) {   如果(err) {   console.log(错);   }   });      

至此,我期望得到的日志文件就完成了。完整代码为:

        const fs=要求(fs);   让选项={   国旗:' a ',//编码:use utf8,//utf8编码   }   让stderr=fs.createWriteStream (’。/H罩尽?选项);//创建记录器   让记录器=new console.Console (stderr);   fs.writeFile (',/H罩尽薄ⅰ昂?err) {   如果(err) {   console.log(错);   }   });//真实项目中调用下面即可记录错误日志   logger.log(“这是一条日志1 ');   logger.log(“这是一条日志2》);   logger.log(“这是一条日志3 ');      

可以将此封装起来,然后在需要的地方去调用。<代码> logger.log(“你需要记录的日志”)即可。

  

<强> 5,其他

  

当然在此基础上你可以拓展其它内容,比如给日志中增加

节点。js在本地生成日志文件的方法