ubuntu

Node.js日志轮转在Ubuntu如何设置

小樊
32
2025-02-23 05:19:11
栏目: 编程语言

在Ubuntu上设置Node.js应用程序的日志轮转,可以使用pm2这个进程管理器。pm2可以帮助你管理Node.js应用程序的运行、监控日志以及实现日志轮转。以下是设置步骤:

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

  2. 使用npm全局安装pm2:

sudo 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'
      }
    }
  ]
};

这里name是应用程序的名称,script是应用程序的入口文件,instances设置为max表示根据CPU内核数自动扩展实例数量,exec_mode设置为cluster表示使用集群模式运行。

  1. 更新你的PM2启动命令以使用新创建的配置文件:
pm2 start ecosystem.config.js --env production

这里--env production表示使用生产环境配置。

  1. 现在你可以使用以下命令来实现日志轮转:
pm2-logrotate

你可以将这个命令添加到crontab中以实现定期执行。例如,每天凌晨1点执行日志轮转:

0 1 * * * pm2-logrotate

要编辑crontab,运行:

crontab -e

然后将上面的命令添加到文件中并保存。

现在你的Node.js应用程序的日志将在指定时间自动轮转。

0
看了该问题的人还看了