前言

有时候我们在项目中需要手工调试并输出某些日志文件时,可以封装一个简单的日志追加方法,这样把一些输出信息追加到文件中

开源项目

本项目收藏在【nodejs-study】中的nodejs_write_append_log目录,欢迎大家学习交流!

简单版本

const fs = require("fs");
// by zhengkai.blog.csdn.net
// fs.appendFile 追加文件内容
// 1, 参数1:表示要向那个文件追加内容,只一个文件的路径
// 2, 参数2:表示要追加的内容
// 3, 可选参数,表示追加文本内容的编码格式,如果省略,默认为utf-8
// 4, 参数4: 表示追加完成之后的回调[有一个参数err,是判断是否追加成功]
//fs.appendFile("./log.txt", new Date().toLocaleString()+" "+JSON.stringify({"CT":"CN","INST":"HBAP","BALANCE":{"ab":111.11,"lb":222.22}})+'\n' , (error)  => { });//async 异步调用,返回promise,可以使用之后可以使用.then()
async function appendLog(cusid,body){fs.appendFile("./log.txt", new Date().toLocaleString()+" "+cusid+" "+JSON.stringify(body)+'\n' , (error)  => { });
}
appendLog("666",{"CT":"CN","INST":"HBAP","BALANCE":123456})

日志检检测

加强版本

主要针对文件名称以及处理一些封装优化。

const fs = require("fs");
// by zhengkai.blog.csdn.net
// fs.appendFile 追加文件内容
// 1, 参数1:表示要向那个文件追加内容,只一个文件的路径
// 2, 参数2:表示要追加的内容
// 3, 可选参数,表示追加文本内容的编码格式,如果省略,默认为utf-8
// 4, 参数4: 表示追加完成之后的回调[有一个参数err,是判断是否追加成功]
//fs.appendFile("./log.txt", new Date().toLocaleString()+" "+JSON.stringify({"CT":"CN","INST":"HBAP","BALANCE":{"ab":111.11,"lb":222.22}})+'\n' , (error)  => { });//async 异步调用,返回promise,可以使用之后可以使用.then()
async function appendLog(cusid,body){//日期处理let currentDate = new Date();let year = currentDate.getFullYear();let month = currentDate.getMonth()+1;let day = currentDate.getDate();//封装保存内容,'\n'为换行符let text = currentDate.toLocaleString()+" "+cusid+" "+JSON.stringify(body)+'\n'//输出到单个文件//fs.appendFile("./log.txt", currentDate.toLocaleString()+" "+cusid+" "+JSON.stringify(body)+'\n' , (error)  => { });//输出到以日期为格式的文件,有效防止单一文件过大let logFile = "./log_"+year+month+day+".txt"console.log(logFile)//存在则追加,不存在则新建if (fs.existsSync(logFile)) {fs.appendFile(logFile, text , (error)  => { });}else{console.log('该路径不存在');//fs.mkdir(logFile,null,(error)  => { });fs.writeFile(logFile, text , (error)  => { });}}//调用
appendLog("666",{"CT":"CN","INST":"HBAP","BALANCE":123456})

输出:文件检测

输出:日志文件

nodejs追加写入日志文件相关推荐

  1. python导入excel类库_Python中使用第三方库xlutils来追加写入Excel文件示例

    Python中使用第三方库xlutils来追加写入Excel文件示例 目前还没有更好的方法来追写Excel,lorinnn在网上搜索到以及之后用到的方法就是使用第三方库xlutils来实现了这个功能, ...

  2. 【Python 必会技巧】使用 Python 追加写入 json 文件或更改 json 文件中的值

    追加写入 json 文件 有一个 test.json 文件,包含内容如下: {"key_1": "value_1" } 现需要追加写入 json 文件,向其中增 ...

  3. python读取日志错误信息_使用Python将Exception异常错误堆栈信息写入日志文件

    假设需要把发生异常错误的信息写入到log.txt日志文件中去: import traceback import logging logging.basicConfig(filename='log.tx ...

  4. BAT脚本: ping检测网络稳定性 与 取命令结果的指定行方法 与 将变量内容追加写入txt文件方法

    ping检测稳定性脚本 @echo off set filePath=D:/pingRecord.csv set ping_url=www.baidu.com set sleep_times=5 :t ...

  5. sqlserver存储过程报错:当前事务无法提交,而且无法支持写入日志文件的操作。请回滚该事务

    请仔细分析这句话 : 是普通的insert 语句,还是在存储过程中的insert语句呢?如果是存储过程中的语句,可能是因为:sqlserver存储过程报错:当前事务无法提交,而且无法支持写入日志文件的 ...

  6. python把异常写入文件_使用Python将Exception异常错误堆栈信息写入日志文件代码

    本篇文章小编给大家分享一下使用Python将Exception异常错误堆栈信息写入日志文件代码及补充知识,对大家的学习有一定的帮助,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看 ...

  7. linux日志添加到文件,关于linux:将变量中的内容追加到日志文件中

    我有一个脚本,并尝试将我的变量中的内容附加到.log文件. 我在另一篇文章中看到了(如何通过命令行将变量文本附加到文件的最后一行?),你可以使用echo"$(cat $ FILE)$ APP ...

  8. java如何追加写入txt文件

    java中,对文件进行追加内容操作的三种方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 import java.io.BufferedWriter; import  ...

  9. java追加txt文件_java怎么追加写入txt文件

    java中,对文件进行追加内容操作的三种方法! import java.io.BufferedWriter;import java.io.FileOutputStream;import java.io ...

  10. java 追加写入txt文件_ava如何追加写入txt文件

    (二)方法1 public void method1() { FileWriter fw = null; try { //如果文件存在,则追加内容:如果文件不存在,则创建文件 File f=new F ...

最新文章

  1. 通信电子线路期末复习第四章 振幅调制、解调和混频
  2. 推荐 9 个 爱不释手的 JSON 工具!
  3. 5G NR Operating bands and channel bandwidth
  4. MyBatis 实际使用案例-settings
  5. centos6虚拟机复制后修改网卡
  6. java applet audion_java applet audion
  7. POI--HSSFCellStyle类
  8. SAP License:SAP与中国电子技术标准化研究院开展交流活动
  9. java数组的二进制查找_Java程序在长数组上实现二进制搜索
  10. ERP项目实施记录05
  11. 总结几个与模块相关的命令
  12. 安装包 — 夜神模拟器下载地址
  13. Eclipse RCP中Viewer交互的三种方式/Make your Eclipse applications richer with view linking
  14. 再更。。2019保研北大夏令营+九推
  15. 如何绕过mac地址过滤_如何通过路由器来过滤无线MAC地址
  16. AE-after Effects 笔记
  17. android仿qq音乐桌面歌词,Android自定义View,高仿QQ音乐歌词滚动控件!
  18. IDEA的TODO的使用
  19. 计算机基础知识统考考ppt么,(计算机应用基础统考)第一章计算机基础知识.ppt
  20. DNS域名解析全过程

热门文章

  1. 微型计算机硬盘接口种类,各种类型的固态硬盘接口形态分类
  2. 王者荣耀服务器未响应 小米,10月23日小米手机更新王者荣耀失败 小米更新不了新赛季怎么办...
  3. android 设置圆形图片,android 圆形头像,自定义圆形ImageView
  4. 安卓实训项目源码_实训2019 | 联想云实训心得
  5. 广义相对论-学习记录7-第三章-张量分析与黎曼几何4
  6. 靠一套PPT上市估值120亿:新能源韭菜的自我修养
  7. python爬虫爬取强智教务系统过程
  8. 一学校出150名在校“老板”
  9. TRIMMEAN函数实例:评委打分计算最后得分
  10. 2021-04-12——新特性Lambda表达式和Function函数式接口编程