
如果你已经知道问题所在,并且忽略这个问题,而且可以把error_log这里的内容清空的话可以使用如下命令:
crontab -e
*/2 * * * * echo "" >/var/log/cups/error_log
上面的 *** 作要用root用户来 *** 作!
实际上你要做的是对nginx的日志进行切分。不知道我理解的对不?
如果是对nginx的日志进行切分的话,可以采用如下 *** 作:
(1)cd logs && mv error.log error.log.suffix #suffix可以设置为一个时间戳(2)./sbin/nginx -s reload #重新生成error.log文件,新的日志写到改文件中。
解释:
在执行了(1)之后,之前写到error.log中的日志还是会写到error.log.suffix文件中。因为,文件的inode没有变化(可以使用stat命令查看)。
在执行了(2)之后,由于nginx在重启的过程中会重新生成error.log,因此,新的日志就不再写入到error.log.suffix,而是写入到新的文件error.log。从而实现了在不丢失日志,不中断服务的情况下实现nginx的日志切分。
对于上述命令,可以写到一个sh脚本中,并且配置成crontab定时任务去定时切割。
注意,重启nginx一定要是用nginx -s reload选项。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)