商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > CentOS PHP日志清理频率多少合适

CentOS PHP日志清理频率多少合适

  发布于2026-07-12 阅读(0)

扫一扫,手机访问

推荐频率与保留策略

CentOS PHP日志清理频率多少合适

  • 生产环境里,一个通用且稳妥的做法是“按天轮转 + 保留7–10天 + 压缩归档”。既能保证回溯需求,又不会让硬盘吃紧。下面这张表格可以直接拿去用:

    场景 轮转频率 保留份数 压缩 典型用途
    PHP-FPM 错误/访问日志 daily 7–10 compress 日常运行、问题排查
    PHP 错误日志(php.ini) daily 7 compress 应用错误记录
    高流量或严格合规 daily 14–30 compress 合规审计、深度排查

    几点说明:

    • 按天轮转能稳定控制单日日志体量,定位问题时段也方便。
    • 保留7–10天基本覆盖大多数故障复盘周期;如果流量大或有合规要求,延长到14–30天也合理。
    • 压缩能省不少空间,旧日志通过 zcatzgrep 查看即可。

logrotate 配置示例

  • PHP-FPM 日志(/etc/logrotate.d/php-fpm

    /var/log/php-fpm*.log {
        daily
        rotate 10
        compress
        missingok
        notifempty
        create 0640 root adm
        postrotate
            /usr/sbin/php-fpm -k >/dev/null 2>&1 || true
        endscript
    }
    
  • PHP 错误日志(/etc/logrotate.d/php-errors

    /var/log/php_errors.log {
        daily
        rotate 7
        compress
        missingok
        notifempty
        create 0640 root adm
    }
    
  • 关键点:

    • daily + rotate N + compress 这套组合拳,直接控制体量和保留周期。
    • postrotate 里给 PHP-FPM 发信号,让它重新打开日志文件——否则句柄还占着旧文件,轮转就白做了。
    • 保留份数可以按需调,比如从7改成10。

按大小触发与监控

  • 如果更关注单文件不要太大,换成“按大小轮转”也行。比如单个文件超过100MB就轮,保留7份并压缩:

    /var/log/php-fpm.log {
        size 100M
        rotate 7
        compress
        missingok
        notifempty
        create 0640 root adm
        postrotate
            /usr/sbin/php-fpm -k >/dev/null 2>&1 || true
        endscript
    }
    
  • 建议同时配上监控和告警(比如磁盘使用率、日志增长速率),再用 logwatch 做日常摘要分析,能提前发现异常输出。

清理与执行方式

  • logrotate 本身跟着系统的定时任务跑,每天自动完成轮转和清理,不需要额外写删除脚本。如果想立刻手动触发,运行:
    logrotate -f /etc/logrotate.d/php-fpm
  • 如果确有自定义清理需求(比如删掉历史归档),可以用 cron 删掉超过 N 天的已轮转压缩文件。下面这个例子删除 30 天前的 .gz 归档:
    0 2 * * * find /var/log/php-fpm*.gz -mtime +30 -delete
    注意:只在确认不再需要历史归档时才执行删除,别影响审计和复盘。
本文转载于:https://www.yisu.com/ask/83563020.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注