debian

如何自定义 Debian Node.js 日志格式

小樊
45
2025-03-24 12:56:51
栏目: 编程语言

要自定义 Debian 上的 Node.js 应用程序日志格式,您可以使用以下方法:

  1. 使用 morgan 中间件(适用于 Express 应用程序):

    首先,安装 morgan

    npm install morgan
    

    然后,在您的 Express 应用程序中设置自定义日志格式:

    const express = require('express');
    const morgan = require('morgan');
    
    const app = express();
    
    // 自定义日志格式
    morgan.token('customFormat', function (req, res) {
      return `${req.method} ${req.url} - ${res.statusCode} ${req.responseTime}ms`;
    });
    
    // 使用自定义日志格式
    app.use(morgan('customFormat'));
    
    // 其他路由和中间件
    // ...
    
    app.listen(3000, () => {
      console.log('Server is running on port 3000');
    });
    
  2. 使用 winston 日志库(适用于任何 Node.js 应用程序):

    首先,安装 winston

    npm install winston
    

    然后,在您的应用程序中设置自定义日志格式:

    const winston = require('winston');
    
    // 自定义日志格式
    const customFormat = winston.format.combine(
      winston.format.colorize(),
      winston.format.printf(({ timestamp, level, message }) => {
        return `[${timestamp}] ${level}: ${message}`;
      })
    );
    
    // 创建自定义 logger
    const logger = winston.createLogger({
      format: customFormat,
      transports: [
        new winston.transports.Console(),
        // 可以添加其他传输方式,例如文件、HTTP 等
      ],
    });
    
    // 使用自定义 logger
    logger.info('Server is running on port 3000');
    

这两种方法都可以帮助您自定义 Debian 上的 Node.js 应用程序日志格式。选择适合您需求的方法,并根据需要进行调整。

0
看了该问题的人还看了