温馨提示×

linux js日志格式怎么改

小樊
43
2026-09-14 16:42:34
栏目: 编程语言

在 Linux 环境下,“JS 日志格式怎么改”通常分几种情况,我分别说明,你看看你属于哪一种。


一、前端 JS(浏览器/Web 项目)日志格式修改

如果你是指 JavaScript 代码里的 console 日志格式,常见做法:

1. 改 console.log 输出格式

console.log(`[${new Date().toISOString()}] [INFO] 用户登录:`, userId);

2. 封装统一日志函数(推荐)

function log(level, msg, data) {
  const time = new Date().toISOString();
  console.log(`[${time}] [${level}] ${msg}`, data || '');
}

log('ERROR', '接口失败', { code: 500 });

3. 使用日志库(格式更规范)

  • winston
  • pino
  • log4js

示例(log4js):

const log4js = require('log4js');
log4js.configure({
  appenders: { out: { type: 'stdout' } },
  categories: { default: { appenders: ['out'], level: 'info' } }
});
const logger = log4js.getLogger();
logger.info('这是标准格式日志');

二、Node.js 服务端日志格式修改(Linux 上运行)

1. 修改日志输出格式(以 winston 为例)

const winston = require('winston');

const logger = winston.createLogger({
  format: winston.format.combine(
    winston.format.timestamp(),
    winston.format.printf(({ timestamp, level, message }) => {
      return `${timestamp} [${level}] ${message}`;
    })
  ),
  transports: [new winston.transports.Console()]
});

logger.info('服务启动');

输出示例:

2026-01-15T10:00:00.000Z [info] 服务启动

三、Linux 系统/服务日志格式(JS 进程日志)

如果你是把 JS 程序跑在 Linux 上(如 PM2、systemd),日志格式由程序本身决定,但你可以:

1. PM2 日志

pm2 logs

格式由 JS 代码控制,PM2 只负责收集。

2. systemd 服务日志

journalctl -u your-js-service

日志格式由 systemd 控制,可改:

# /etc/systemd/journald.conf
ForwardToSyslog=yes

四、如果是“日志文件格式”(如 JSON / 文本)

JSON 格式(方便采集)

console.log(JSON.stringify({
  time: new Date(),
  level: 'info',
  msg: '请求成功'
}));

文本格式

[时间] [级别] 内容

你可以告诉我:

  1. 是 前端 JS 还是 Node.js?
  2. 想改成什么格式(时间+级别?JSON?)
  3. 用的是啥(console / winston / pm2 / nginx?)

我可以直接给你一份可复制的配置。

0 踩