日志拆分

系统上线时,还会讲解和演示。

使用 logrotate

阿里云服务器,按照之前配置 nginx 的方法,已经自带了,无需自己配置
可查看 /etc/logrotate.d/nginx 文件。

使用 crontab

crontab 即 linux 的定时任务。可使用它来定时拆分 nginx 日志,需要手写代码。
第一,创建脚本 nginxLogRotate.sh

  1. #!/bin/ bash
  2. base_path='/xxX/×xx/nginx' # 日志目录
  3. log_path=$(date -d yesterday +"%Y%m")
  4. day=$(date -d yesterday +"%Y%m%d")
  5. mkdir -p $base_path/$log_path
  6. mv $base_path/access.log $base_path/$log_path/access_$day.log
  7. mv $base_path/error.log $base_path/$log_path/error_$day.log

第二,执行 crontab -e 编辑定时任务,添加这一行

  1. 0 0 * * * sh /xxk/xxx/ nginxLogRotate.sh

第三,查看已有的定时任务 crontab -l