首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Nginx 日志切割

Nginx 日志切割

原创
作者头像
子润先生
修改2021-06-28 10:32:00
修改2021-06-28 10:32:00
1.3K0
举报

最近还在写图床工具,涉及到日志统计相关的,比如访问统计,流量统计等,看了一下七牛的实现,发现每次创建一个bucket仓库都会自动生成一个域名,该仓库下的资源都会走这个域名。但是自己要实现这一套逻辑还是满繁琐的,所以初步还是考虑用 Nginx 的一些功能来代替,其中流量统计就考虑使用 Nginx 自带的日志来分析。

考虑到日后日志大小过大,NodeJs读取会花太多时间,所以是要按天来切割日志,刚开始我写了一个简单的脚本。利用 crontab 的定时功能。

先按日期重命名文件,然后新建一个同名的日志文件让 Nginx 来写入,实际测试发现新建的 log 并没有被写入。但是 Nginx reload 却可以,最终网上找到了 killall -s USR1 nginx 这条命令来通知 Nginx 重新创建新的日志

代码语言:javascript
复制
#!/bin/bash

log_path='/home/wwwlogs/'

log='pic.noxxxx.com.log'

target=`date "+%Y-%m-%d_%H:%M:%S_"`${log}
#echo $target
cd $log_path

mv $log "./"${target}

killall -s USR1 nginx

#touch $log

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档