侧边栏壁纸
  • 累计撰写 123 篇文章
  • 累计创建 27 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

Nginx日志分割

梁来福
2024-09-04 / 0 评论 / 0 点赞 / 2 阅读 / 1878 字
温馨提示:
本文最后更新于 2024-09-09,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

定时任务执行分割脚本

脚本准备

# 写入脚本
[root@Nginx scripts]# cat > /root/scripts/cut_nginxlog.sh << 'EOF'
> #!/bin/bash
>
> # 需要切割日志所在的目录
> LOGS_PATH=/usr/local/nginx/logs
>
> # 获取当前服务器时间
> YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
>
> # 需要切割的日志
> mv ${LOGS_PATH}/api.moneyway.in.log ${LOGS_PATH}/api.moneyway.in_${YESTERDAY}.log
> mv ${LOGS_PATH}/sdk.moneyway.log ${LOGS_PATH}/sdk.moneyway_${YESTERDAY}.log
>
> # 通知Nginx生成新的日志
> kill -USR1 `ps aux | grep "nginx: master process" | grep -v grep | awk '{print $2}'`
> EOF

# 添加权限
[root@Nginx scripts]# chmod +x cut_nginxlog.sh
[root@Nginx scripts]# ll cut_nginxlog.sh
-rwxr-xr-x. 1 root root 456 9月   4 15:17 cut_nginxlog.sh

添加定时任务

# crontab -e 写入下面内容:
0 0 * * *    /root/scripts/cut_nginxlog.sh >/dev/null 2>&1

# crontab -l可以查看所有的定时任务
[root@Nginx scripts]# crontab -l
0 0 * * *    /root/scripts/cut_nginxlog.sh >/dev/null 2>&1

# 这样每天的23点59就会将当天的日志进行备份,并生成新的日志文件继续记录访问日志

测试

# 手动执行脚本进行测试
[root@Nginx scripts]# /root/scripts/cut_nginxlog.sh

# 查看日志是否分割
[root@Nginx logs]# pwd
/usr/local/nginx/logs
[root@Nginx logs]# ll *moneyway*
-rw-r--r--. 1 root root 4186304361 9月   4 15:38 api.moneyway.in_2024-09-03.log
-rw-r--r--. 1 root root      17434 9月   4 15:39 api.moneyway.in.log
-rw-r--r--. 1 root root 1103019841 9月   4 15:38 sdk.moneyway_2024-09-03.log
-rw-r--r--. 1 root root        324 9月   4 15:38 sdk.moneyway.log
# 如上已经成功

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
博主关闭了所有页面的评论