溫馨提示×

Node.js日志格式Ubuntu如何自定義

小樊
34
2025-02-27 06:07:15
欄目: 編程語言

在Node.js中,可以使用第三方庫winstonmorgan來自定義日志格式。這里以winston為例,介紹如何在Ubuntu系統中自定義日志格式。

  1. 首先,確保已經安裝了Node.js和npm。如果沒有,請訪問Node.js官網下載并安裝。

  2. 在項目目錄中,使用以下命令安裝winston

    npm install winston
    
  3. 創建一個名為logger.js的文件,并在其中設置自定義日志格式。例如:

    const winston = require('winston');
    
    const logger = winston.createLogger({
      level: 'info',
      format: winston.format.combine(
        winston.format.timestamp({
          format: 'YYYY-MM-DD HH:mm:ss'
        }),
        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' })
      ]
    });
    
    module.exports = logger;
    

    在這個例子中,我們使用了winston.format.combine來組合多個格式化選項。winston.format.timestamp用于添加時間戳,winston.format.printf用于自定義日志輸出格式。

  4. 在你的主要應用文件(如app.js)中,引入并使用自定義的logger

    const logger = require('./logger');
    
    logger.info('Hello, world!');
    logger.error('An error occurred');
    
  5. 運行你的應用:

    node app.js
    

    你將在控制臺和日志文件中看到自定義格式的日志輸出。

這只是一個簡單的例子,你可以根據需要調整日志級別、格式和傳輸方式。更多關于winston的信息,請參考官方文檔。

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