nodejs将console.log保存到log.txt文档中(electron工具)

txtConsole.js

js 复制代码
const { app } = require('electron');
const fs = require('fs');
const moment = require('moment');
const mainData = require('./mainData');

//electron 软件根目录
const rootPath = path.dirname(app.getPath('exe'));

const txtConsole = {
  log(p1 = '', p2 = '', p3 = '', p4 = '', p5 = '') {
    const logPath = `${rootPath}/log.txt`;

    try {
      //创建config文件
      if (!fs.existsSync(logPath)) {
        //新建文件
        fs.writeFileSync(logPath, '');
      }

      //追加到log文件
      fs.appendFileSync(
        logPath,
        `\r\n ${moment().format('Y-MM-DD HH:mm:ss')} |  ${p1} ${p2} ${p3} ${p4} ${p5}`,
      );

      console.log(p1, p2, p3, p4, p5);
    } catch (err) {
      console.log('txtConsole: ', err);
    }
  },
  //清除日志 在app.js内进入执行
  clearLog() {
    const logPath = `${rootPath}/log.txt`;
    
    try {
      if (fs.existsSync(logPath)) {
        let stat = (fs.statSync(logPath)?.size || 1) / 1024;

        txtConsole.log(`当前log文件大小:${parseInt(stat)}KB`);

        if (parseInt(stat) > 1024) fs.unlinkSync(logPath);
      }
    } catch (err) {
      console.log(err);
    }
  },
}; //日志文件

module.exports = txtConsole;

调用

js 复制代码
txtConsole.log(1,2,3);
相关推荐
西瓜太郎12347 分钟前
外层模型卡片与分组详情成功率不一致,应该怎么排查?
前端·typescript·go·软件工程·react
GreenTea24 分钟前
vLLM 与 SGLang KV Cache 底层实现机制深度调研报告
前端·后端·算法
几何心凉3 小时前
没有万能模型:我用 AiiOnly Token Plan,把多款大模型的长处拼进同一个项目
前端
kyriewen3 小时前
Claude Code 的额度今天缩水了17%——官方公告上写的是"永久提高25%"
前端·ai编程·claude
雪芽蓝域zzs4 小时前
vue解构平铺VS对象包裹
前端·javascript·vue.js
风骏时光牛马5 小时前
从零到实战,完整AI学习路线
前端
三十而立洋5 小时前
深入理解 Monorepo:子包安装依赖
前端·前端工程化
IT_陈寒6 小时前
Java Stream处理大集合,我的内存怎么就炸了
前端·人工智能·后端
Captaincc6 小时前
AI 用量桌面端-桌面宠物自定义指南
前端·人工智能
OpenTiny社区6 小时前
码力全开,智启前端新生态|OpenTiny 登陆华为全联接大会2026
前端·github