温馨提示×

Node.js日志轮转Ubuntu上如何操作

小樊
41
2025-11-20 07:33:05
栏目: 编程语言

在Ubuntu上,可以使用pm2这个进程管理器来实现Node.js应用程序的日志轮转。以下是使用pm2进行日志轮转的步骤:

  1. 首先,确保已经安装了Node.js和npm。

  2. 使用npm安装pm2:

npm install pm2 -g
  1. 启动Node.js应用程序:
pm2 start app.js --name my-app

这里,app.js是你的Node.js应用程序的入口文件,my-app是应用程序的名称。

  1. 配置日志轮转。创建一个名为ecosystem.config.js的文件,将以下内容添加到文件中:
module.exports = {
  apps: [
    {
      name: 'my-app',
      script: 'app.js',
      instances: 'max',
      exec_mode: 'cluster',
      autorestart: true,
      watch: false,
      max_memory_restart: '1G',
      env: {
        NODE_ENV: 'development',
      },
      env_production: {
        NODE_ENV: 'production',
      },
    },
  ],
};

这里,我们配置了一个名为my-app的应用程序,它将在生产环境下运行。你可以根据需要修改这些配置。

  1. ecosystem.config.js文件中添加日志轮转配置:
module.exports = {
  // ...
  log_date_format: 'YYYY-MM-DD HH:mm:ss',
  out_file: './logs/out.log',
  error_file: './logs/error.log',
  combine_logs: true,
  rotate_logs: true,
  log_rotation_interval: '24h',
};

这里,我们配置了日志文件的路径、日期格式、是否合并日志、是否启用日志轮转以及日志轮转的时间间隔。

  1. 使用pm2启动应用程序:
pm2 start ecosystem.config.js

现在,Node.js应用程序的日志将按照配置进行轮转。你可以使用以下命令查看日志:

pm2 logs my-app

要停止日志轮转,可以将rotate_logs设置为false,然后重新启动应用程序:

pm2 restart ecosystem.config.js

0