Hello! 欢迎来到小浪云!


Linux环境下JS日志如何生成


avatar
小浪云 2025-05-27 22

Linux环境下JS日志如何生成

Linux环境中,利用JavaScript生成日志的方式有多种途径。接下来,我将分享两种常见的实现方式:一种是借助Node.JS自带的模块,另一种则是通过引入第三方库来完成。

方式一:运用Node.js内置模块

第一步:建立一个命名为logger.js的新文件。 第二步:在logger.js里加载Node.js原生提供的fs与path模块,以便执行文件相关任务。 第三步:设定一个固定的日志等级标识符,比如:const LOG_LEVEL = ‘info’;。 第四步:构建一个专门用来记录日志的函数,例如:

const fs = require('fs'); const path = require('path');  function log(message, level = 'info') {   if (level === LOG_LEVEL) {     const time = new Date().toISOString();     const entry = `${time} [${level.toUpperCase()}]: ${message}n`;     const filePath = path.join(__dirname, 'logs.txt');      fs.appendFile(filePath, entry, (error) => {       if (error) {         console.error('Error while logging:', error);       }     });   } }  module.exports = { log };

第五步:在其他的JavaScript脚本中,加载logger.js模块并调用log函数以保存日志信息:

const logger = require('./logger');  logger.log('这是一个普通的信息'); logger.log('这是一个警告信息', 'warn');

方式二:采用第三方库

第一步:安装winston库:在命令行界面输入npm install winston。 第二步:创建一个叫做logger.js的文件。 第三步:在logger.js中,加载winston库并初始化日志处理器

const winston = require('winston');  const logger = winston.createLogger({   level: 'info',   format: winston.format.combine(     winston.format.timestamp(),     winston.format.printf(({ timestamp, level, message }) => {       return `${timestamp} [${level.toUpperCase()}]: ${message}`;     })   ),   transports: [     new winston.transports.File({ filename: 'logs.txt' }),   ], });  module.exports = logger;

第四步:在其他的JavaScript代码中,加载logger.js模块并利用logger对象来记录日志:

const logger = require('./logger');  logger.info('这是一个普通的信息'); logger.warn('这是一个警告信息');

以上两种方案均能在Linux系统下成功生成JavaScript的日志内容。依据实际需要,您可以自行挑选适合自己的解决方案。

相关阅读