温馨提示×

Node.js在Ubuntu上日志轮转怎么做

小樊
38
2025-12-06 00:49:16
栏目: 编程语言

在Ubuntu上,可以使用logrotate工具来实现Node.js应用程序的日志轮转。以下是配置和使用logrotate的步骤:

  1. 安装logrotate: 如果你的系统还没有安装logrotate,可以使用以下命令安装:

    sudo apt-get update
    sudo apt-get install logrotate
    
  2. 创建logrotate配置文件: 在/etc/logrotate.d/目录下创建一个新的配置文件,例如为你的Node.js应用创建一个名为myapp的配置文件:

    sudo nano /etc/logrotate.d/myapp
    
  3. 编辑配置文件: 在打开的配置文件中,添加以下内容并相应地修改路径和设置:

    /path/to/your/nodejs/app/logs/*.log {
        daily
        rotate 7
        compress
        missingok
        notifempty
        create 0640 root adm
    }
    

    这里的配置表示:

    • 每天轮转日志文件
    • 保留最近7天的日志文件
    • 对旧日志文件进行压缩
    • 如果日志文件不存在,不会产生错误
    • 如果日志文件为空,不进行轮转
    • 创建新的日志文件,权限为0640,属主为root,属组为adm
  4. 测试logrotate配置: 使用以下命令测试logrotate配置是否正确:

    sudo logrotate -f /etc/logrotate.d/myapp
    

    如果一切正常,你应该会看到类似以下的输出:

    reading config file /etc/logrotate.d/myapp
    Handling 1 lines
    
  5. 自动执行logrotate: logrotate默认每天运行一次,检查并轮转日志文件。你可以通过查看/etc/cron.daily/logrotate文件来确认这一点。

现在,你的Node.js应用程序的日志文件将根据配置自动轮转。如果你需要手动触发日志轮转,可以使用sudo logrotate -f /etc/logrotate.d/myapp命令。

0