VPS侦探论坛

 找回密码
 注册
查看: 38418|回复: 28

Nginx日志切割脚本

[复制链接]
发表于 2011-3-7 09:38:08 | 显示全部楼层 |阅读模式




目前网上也有一些Nginx日志切割脚本,但是论坛还是有用户反映网上Nginx日志切割脚本有问题,我感觉一般是因为脚本中的参数设置问题,或者是crontab中的设置问题。


为方便lnmp一键安装包用户,我也写了一个Nginx日志切割脚本,下载地址:http://soft.vpser.net/lnmp/ext/cut_nginx_logs.sh LNMP安装包里 tools 下以自带次脚本。


如果是lnmp0.5/0.6用户可以直接使用不需要修改脚本。

脚本主要参数:
#设置nginx日志文件目录路径
log_files_path="/home/wwwlogs/"
#日志文件将会存放到/home/wwwlogs/年/月/日志文件名_年月日.log
log_files_dir=${log_files_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")
#设置要切割的日志的名字,如果日志目录下面的日志文件名为vpser.net.log,则填写vpser.net,每个日志名用空格分隔
log_files_name=(access vpser.net licess)
#设置nginx文件的位置
nginx_sbin="/usr/local/nginx/sbin/nginx"
#设置日志保存的时间,天
save_days=30


如果是非lnmp一键安装包用户可以通过修改上述参数适应你的nginx环境。


nginx日志切割脚本下载到/root/下面。再添加自动执行,执行:crontab -e


输入:00 00 * * * /bin/bash /root/cut_nginx_logs.sh 每天0点整开始切割脚本。


本文仅供Nginx用户及lnmp用户参考,如有问题欢迎到https://bbs.vpser.net反馈。


原创文章谢绝转载!
美国VPS推荐: 遨游主机LinodeLOCVPSKVMLAVPS2EZ搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
发表于 2011-3-7 10:14:09 | 显示全部楼层


军哥真是努力啊!看来我也得努力学习了,希望有地方能帮到军哥,为大家也做点贡献
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2011-3-7 18:41:51 | 显示全部楼层



支持啊,用上了!!!!
美国VPS推荐: 遨游主机LinodeLOCVPSKVMLAVPS2EZ搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
发表于 2011-3-7 23:53:59 | 显示全部楼层

回复 1# 的帖子




这个是适用多个日志文件的吧

[ 本帖最后由 zleicx 于 2011-3-8 00:22 编辑 ]
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2011-3-8 00:31:15 | 显示全部楼层

为什么我执行后提示:/root/cut_nginx_logs.sh: /bin/bash m:bad interpreter

去掉cut_nginx_logs.sh第一行的/bin/bash后执行出现

command not found.sh: line3
command not found.sh: line13
command not found.sh: line18
command not found.sh: line20
command not found.sh: line22 syntax error near unexpected token 'do
command not found.sh: line22 for((i=0;i<$log_files_num;i++));do

怎么回事?

[ 本帖最后由 zleicx 于 2011-3-8 00:37 编辑 ]

美国VPS、VPN、域名代购:http://shop63846532.taobao.com/

发表于 2011-3-8 10:10:40 | 显示全部楼层

谢谢军哥啊 我试下
发表于 2011-3-8 10:23:25 | 显示全部楼层

谢谢啊  成功了  网上试了很多次不成功 用军哥的成功了 感谢军哥
美国VPS推荐: 遨游主机LinodeLOCVPSKVMLAVPS2EZ搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
 楼主| 发表于 2011-3-8 11:11:10 | 显示全部楼层

回复 5# 的帖子




是不是在本地用过记事本之类的编辑过,使用记事本可能保存后就成DOS格式的了,建议使用vi或者nano之类的编辑器编辑。
可以使用vi /root/cut_nginx_logs.sh
再输入set fileformat=unix 回车
在输入:wq 回车
这样就转化成unix格式的了。
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2011-3-26 22:53:00 | 显示全部楼层



我加上了,ok,请问军哥,怎样修改开始时间,我想改改

美国VPS、VPN、域名代购:http://shop63846532.taobao.com/

发表于 2011-5-12 11:17:35 | 显示全部楼层



请问军哥,日志脚本文件添加了新的要切割的文件名。是立即生效的吗?

比如将 log_files_name=(access vpser.net licess)
修改为:log_files_name=(access vpser.net licess localhost 127.0.0.1)

并且也有这两个文件

如果不能生效,需要什么命令呢?
 楼主| 发表于 2011-5-12 12:23:54 | 显示全部楼层

回复 10# 的帖子


每天0点整开始切割脚本。

vpser.net licess localhost 127.0.0.1 也是都是你log文件名?

这些肯定都要改成你自己的,别照抄。。
发表于 2011-5-19 14:16:57 | 显示全部楼层

请问lnmp的Nginx如何绑定域名绑定目录


请问lnmp的Nginx如何绑定域名绑定目录
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
发表于 2012-2-23 23:33:51 | 显示全部楼层
请问军哥,在LNMPA一键安装包 0.8里面需要下载这个切割脚本吗?

如果需要的话,请问把这个脚本放到哪个目录里面?

需要把这个脚本添加为自动执行吗?怎么添加为自动执行呢?

本人是新手,诚请各高手帮忙解答一下,感谢!!

这个每天定时切割脚本,需要我的vps安装Crontab服务吗?

[ 本帖最后由 xg3366 于 2012-2-23 23:40 编辑 ]
美国VPS推荐: 遨游主机LinodeLOCVPSKVMLAVPS2EZ搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
 楼主| 发表于 2012-2-24 10:02:46 | 显示全部楼层
文中已经给出自动运行的方法

需要

美国VPS、VPN、域名代购:http://shop63846532.taobao.com/

发表于 2012-7-7 15:57:21 | 显示全部楼层

学习下

学习下..呵呵 希望lanp越做越好
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|VPS侦探 ( 鲁ICP备16040043号-1 )

GMT+8, 2019-11-15 00:00 , Processed in 0.099372 second(s), 38 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表