【问题标题】:Way To Append To File While Keeping the File Size Constant在保持文件大小不变的情况下附加到文件的方法
【发布时间】:2018-10-24 05:42:15
【问题描述】:

我正在寻找一种将日志从 NodeJS 写入文件的方法。我正在使用 fs.appendFile 选项。有没有办法通过保持文件大小不变来继续添加文件 - 例如,如果文件超过 5 MB 并且有新行进入,请删除最旧的行以适应新行 - 有点像滚动基础?

【问题讨论】:

    标签: node.js filesystems fs appendfile


    【解决方案1】:

    如果您愿意使用库而不是附加文件进行日志记录。您可以将winstonDaily rotate file Transport 一起使用,您可以将文件大小限制在5MB 或天数或两者兼有。

    我建议压缩日志并将它们保存几天/几周,并设置一个 cron 作业或其他东西来删除旧文件。如果你真的想删除所有日志,你可以在轮换时删除

    transport.on('rotate', function(oldFilename, newFilename) {
        fs.unlinkSync('<log-file-name>')
      });
    

    通常日志轮换由操作系统使用logrotate之类的东西处理

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-09
      • 2015-11-30
      • 2017-12-20
      • 2021-01-14
      • 2020-10-31
      • 2019-09-25
      • 1970-01-01
      相关资源
      最近更新 更多