溫馨提示×

如何定制Ubuntu Node.js日志輸出模板

小樊
36
2025-08-21 03:33:50
欄目: 編程語言

要定制 Ubuntu 上的 Node.js 應用程序的日志輸出模板,您可以使用一些流行的日志庫,例如 winstonmorgan。這些庫允許您自定義日志格式和輸出。下面是一個使用 winston 的示例:

  1. 首先,確保您已經安裝了 Node.js 和 npm。如果沒有,請訪問 https://nodejs.org/ 下載并安裝。

  2. 在項目文件夾中運行以下命令,以創建一個新的 Node.js 項目(如果尚未創建):

mkdir my-nodejs-app
cd my-nodejs-app
npm init -y
  1. 安裝 winston
npm install winston
  1. 創建一個名為 logger.js 的文件,并添加以下內容:
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.Console(),
    new winston.transports.File({ filename: 'logs/error.log', level: 'error' }),
    new winston.transports.File({ filename: 'logs/combined.log' }),
  ],
});

if (process.env.NODE_ENV !== 'production') {
  logger.add(new winston.transports.Console({
    format: winston.format.simple(),
  }));
}

module.exports = logger;

在這個示例中,我們使用 winston.format.printf 自定義日志輸出模板。您可以根據需要修改模板。

  1. 在您的 Node.js 應用程序中使用 logger
const logger = require('./logger');

logger.info('Hello, world!');
logger.error('An error occurred');

現在,當您運行應用程序時,日志將按照自定義模板輸出到控制臺和日志文件中。

您可以根據需要調整 winston.createLogger 配置中的 formattransports 選項,以滿足您的需求。更多關于 winston 的信息和配置選項,請參閱官方文檔:https://github.com/winstonjs/winston

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女